oxinsider

package module
v0.4.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Sep 29, 2026 License: MIT Imports: 18 Imported by: 0

README

0xinsider Go SDK

The official Go client for the 0xinsider Developer API: Polymarket analytics for sports and esports. Every tracked wallet is graded S to F from settled P&L; the API returns grades, large trades, sharp-money flow, positions, market snapshots, reports and search.

Install

go get github.com/0xinsider/0xinsider-go

Use

package main

import (
	"context"
	"fmt"
	"log"
	"os"

	oxinsider "github.com/0xinsider/0xinsider-go"
)

func main() {
	client, err := oxinsider.New(oxinsider.WithBearerToken(os.Getenv("OXI_API_KEY")))
	if err != nil {
		log.Fatal(err)
	}
	limit := 10
	resp, err := client.ListLeaderboardWithResponse(context.Background(), &oxinsider.ListLeaderboardParams{Limit: &limit})
	if err != nil {
		log.Fatal(err)
	}
	if resp.JSON200 == nil {
		log.Fatalf("HTTP %d: %s", resp.StatusCode(), resp.Body)
	}
	for _, trader := range resp.JSON200.Data {
		fmt.Println(trader.Address)
	}
}

Every operation in the OpenAPI document has a typed ...WithResponse method. JSON200 (and the other status fields) hold the decoded body; Body keeps the raw bytes and StatusCode() the status.

  • Credentials. WithBearerToken accepts an API key (oxi_sk_live_...) or an OAuth 2.1 access token (oxi_at_...). Discovery (GetApiDiscovery), health and the platform capability document need none. Data operations need an active Pro subscription.
  • Where the credential goes. It is sent over https:// only, or over http:// to a loopback host (localhost, 127.0.0.1, [::1]) for a backend you run yourself. A WithBaseURL that would send it anywhere else fails every credentialed request with *InsecureTransportError before it is sent, and a redirect that would downgrade a credentialed request to plain HTTP is refused the same way; the error names the destination, never the token. A client without WithBearerToken may still call the public operations on such a base.
  • Errors. A 401 carries WWW-Authenticate with the protected-resource metadata URL; a 403 insufficient_scope names the OAuth scope a token lacks; a 429 carries Retry-After. Read the JSON error object's error.code and branch on it; error.message is prose.
  • Numbers. Money and price fields keep the API's full precision. Do not round before you display them.
  • Missing values. A missing, stale, partial or unavailable field means the provider did not report that value. Do not read it as zero.

How old is it?

A trader carries data_quality inside data, and the positions and large-trade pages carry it beside data: a status, the oldest as_of the body rests on, and one entry per field group. AssessDataQuality turns it into one decision against your own tolerance. It reads the raw bytes a ...WithResponse method keeps in Body, so it needs no generated type, and it makes no request:

verdict, err := oxinsider.AssessDataQuality(resp.Body, oxinsider.DataQualityOptions{MaxAge: 15 * time.Minute})
if err != nil {
	log.Fatal(err) // the body carries no data_quality block
}
if !verdict.OK {
	for _, f := range verdict.Failing {
		log.Println(f.Group, f.Status, f.Reason)
	}
}

A group passes only when its status is fresh, it carries as_of, and that clock is within MaxAge. fresh means tracked and clocked, not current enough for you. unknown fails: the read cannot date that group, and missing is never recent. untracked groups are listed in verdict.Untracked and left out of the verdict. Set Groups: []string{"ranking", "volume"} to judge only the groups you read; a named group the body does not carry fails as missing. The TypeScript (assessDataQuality) and Python (assess_data_quality) SDKs apply the same rule.

Timeouts

net/http has no default timeout, so the quickstart above would otherwise wait forever on a stalled connection. A client from New bounds every ordinary request:

Bound Default What it covers
DefaultRequestTimeout 30s one ordinary request end to end: connect, request, headers and body, across any redirect
DefaultDownloadTimeout 5m GET /api/v1/trader/{address}/export/download, whose body is a presigned file this SDK does not size
DefaultConnectTimeout 10s establishing the TCP connection
DefaultTLSHandshakeTimeout 10s the TLS handshake
DefaultResponseHeaderTimeout 15s the wait from the end of the request to the first response header, on every request

A context that already carries a deadline is never shortened or extended, so a shorter caller deadline wins and a longer one is honored:

ctx, cancel := context.WithTimeout(ctx, 2*time.Second)
defer cancel()
resp, err := client.ListLeaderboardWithResponse(ctx, &oxinsider.ListLeaderboardParams{})

oxinsider.WithRequestTimeout(d) changes the client's default for every request but the event stream, and WithRequestTimeout(0) removes it and leaves the connection bounds in place. A deadline this client applied is a *oxinsider.RequestTimeoutError, which names the bound and unwraps to context.DeadlineExceeded; a deadline or cancellation you brought is returned as context.DeadlineExceeded or context.Canceled, and a connect, handshake or header stall as the transport's own timeout error. http.Client.Timeout is deliberately not set, because it would also bound reading the event stream's body.

WithHTTPClient still replaces the HTTP client, and its owner then owns the connection bounds; the per-request deadline is applied around it either way.

Stream

GET /api/v1/stream is an unbounded Server-Sent Events stream. Read it with OpenStream, which delivers each frame as it arrives, holds at most WithMaxFrameBytes (1 MiB by default) for one undelivered frame, and closes the connection when the context is cancelled or the reader is closed:

cursor := "0" // the last seq you processed; omit LastEventID to attach live
reader, err := client.OpenStream(ctx, &oxinsider.GetStreamParams{LastEventID: &cursor})
if err != nil {
	log.Fatal(err) // *oxinsider.StreamHTTPError (401, 429 with Retry-After, ...) or *oxinsider.StreamProtocolError
}
defer reader.Close()
for {
	frame, err := reader.Next()
	if errors.Is(err, io.EOF) {
		break // the server closed the stream; reconnect with the last seq
	}
	if err != nil {
		log.Fatal(err) // ctx.Err(), a transport error, or *oxinsider.StreamProtocolError
	}
	if frame.Resync {
		// The resume point is outside the retained window: refetch state, then continue live.
		continue
	}
	cursor = strconv.FormatInt(frame.Seq, 10)
	fmt.Println(frame.Type, string(frame.Data))
}

A frame that breaks the SSE contract (not JSON, not an object, no usable sequence, a malformed resync marker, a 200 that is not text/event-stream, or a frame past the byte ceiling) ends the stream with a *StreamProtocolError whose Reason, LastSeq and FrameID say which frame and where to resume from; a malformed frame never moves LastSeq. Keep-alive comments are consumed silently, retry: is exposed as RetryHint, and the stream's headers are on Response().

The stream carries no total deadline: it is meant to stay open, and the ordinary-request bound above does not apply to it. It is bounded where it can stall instead. WithStreamStartTimeout (10s) bounds the wait for the response headers, and WithStreamIdleTimeout (60s) ends a connection that has sent nothing, not even a keep-alive; the API sends one every 5 seconds, so a minute of silence is twelve missed keep-alives and not a quiet feed. Either bound ends the call with a *StreamTimeoutError whose Phase says which one and whose LastSeq says where to resume; 0 removes either bound. The idle clock runs only while the reader is waiting for bytes, so taking your time between frames does not trip it.

Do not read the stream with the generated GetStreamWithResponse: it reads the body to EOF, which a healthy stream never reaches, so it would neither return nor bound its memory. A client from New refuses that call with ErrStreamBuffered. To own the raw *http.Response instead, call GetStream with RawStreamContext(ctx).

Run the example, which needs no key for discovery and health:

go run ./examples/discovery
OXI_API_KEY=oxi_sk_live_... go run ./examples/discovery
OXI_API_KEY=oxi_sk_live_... go run ./examples/stream

Regenerate

./scripts/generate.sh fetches the published OpenAPI document, drops the bracketed expand[] query aliases (the SDK always sends expand), regenerates oxinsider.gen.go with oapi-codegen, writes provenance.go, and vets and builds the module. A weekly workflow opens a pull request when the published document changes.

provenance.go says which document a release was generated from: OpenAPISHA256 (the SHA-256 of the document bytes), OpenAPIVersion, OperationCount, and AppCommit, the 0xinsider/0xinsider commit that last changed web/public/api/v1/openapi.json (empty when it could not be resolved). Compare OpenAPISHA256 with shasum -a 256 of the live document to see whether a release is behind the API.

Immutable whale datasets

SubmitWhaleDatasetWithResponse creates a bounded NDJSON snapshot. Read GetWhaleDatasetStatusWithResponse and follow next_action and poll_after_s; CancelWhaleDatasetWithResponse cancels work before its completion fence.

For a ready job, use the raw DownloadWhaleDataset response and stream Body with io.Copy, then close it. The default client follows the storage redirect without forwarding the API credential and applies the file-transfer timeout. Hash the gzip bytes against the manifest's compressed SHA-256, or decode gzip and hash the content against its content SHA-256. The generated WithResponse download method buffers the file.

Resume GetEventReplaySinceWithResponse with the manifest's continuation cursor and non-null filters. Its MinSize query parameter is a decimal string so the handoff remains exact. The finite snapshot window does not restrict later deltas; deduplicate snapshot and expanded replay rows by their wt_ trade ID. Coverage is detected whale alerts, not all provider fills or updates and deletions.

License

MIT

Documentation

Overview

Package oxinsider is the official Go client for the 0xinsider Developer API: Polymarket analytics for sports and esports, with every tracked wallet graded S to F from settled P&L, large trades, sharp-money flow, positions, market snapshots and reports.

The client is generated from the published OpenAPI 3.1 document at https://0xinsider.com/api/v1/openapi.json. Authenticate with an API key from https://0xinsider.com/developers or an OAuth 2.1 access token; see https://0xinsider.com/auth.md.

client, err := oxinsider.New(oxinsider.WithBearerToken(os.Getenv("OXI_API_KEY")))
board, err := client.ListLeaderboardWithResponse(ctx, &oxinsider.ListLeaderboardParams{})

Every ordinary request from such a client is finitely bounded, in total and on the connection, even from context.Background: see DefaultRequestTimeout and WithRequestTimeout. A deadline on the context always wins.

Read the live event stream (GET /api/v1/stream) with OpenStream, which delivers frames as they arrive, bounds its memory, and carries its own start and idle timeouts instead of the ordinary-request deadline; the generated GetStreamWithResponse reads the unbounded body to EOF and is refused by a client from New.

reader, err := client.OpenStream(ctx, nil)
frame, err := reader.Next()

Package oxinsider provides primitives to interact with the openapi HTTP API.

Code generated by github.com/oapi-codegen/oapi-codegen/v2 version v2.8.0 DO NOT EDIT.

Index

Constants

View Source
const (
	OpenAPISource  = "0xinsider/0xinsider:web/public/api/v1/openapi.json"
	OpenAPISHA256  = "99be30eda181b9464fb925a2f609a86bc96bb9253f6e264bd1d63380573fce64"
	OpenAPIVersion = "1.0.0"
	OperationCount = 87
	AppRepository  = "0xinsider/0xinsider"
	AppSpecPath    = "web/public/api/v1/openapi.json"
	AppCommit      = "0db0fe65d309cdb55ef8ddef28afaafe53f455c2"
)

Which OpenAPI document this release was generated from. OpenAPISHA256 is the SHA-256 of the document bytes as fetched; AppCommit is the 0xinsider/0xinsider commit that last changed web/public/api/v1/openapi.json when it could be resolved, else "". Compare OpenAPISHA256 with the live document to see whether a release is behind the API.

View Source
const (
	// DefaultStreamStartTimeout bounds the wait from the stream request to its
	// response headers. It is shorter than DefaultResponseHeaderTimeout, the
	// transport's backstop for the same wait, so a stream that does not open
	// fails with *StreamTimeoutError rather than a transport error.
	DefaultStreamStartTimeout = 10 * time.Second
	// DefaultStreamIdleTimeout ends a connection that has sent nothing for a
	// minute. The API sends a keep-alive comment every 5 seconds, so a minute
	// of silence is twelve missed keep-alives, not a quiet feed. The clock
	// runs only while the reader is waiting for bytes, so a slow consumer does
	// not trip it.
	DefaultStreamIdleTimeout = 60 * time.Second
)

The stream's own time bounds. A total deadline would cut a healthy connection, so the stream is bounded where it can stall instead: opening it, and silence on it. Both are overridable, and 0 removes either one.

View Source
const (
	// DefaultRequestTimeout bounds an ordinary request end to end: connect,
	// request, response headers and response body, across any redirect.
	DefaultRequestTimeout = 30 * time.Second
	// DefaultDownloadTimeout bounds GET /api/v1/trader/{address}/export/download,
	// which redirects to a presigned file whose size this SDK does not know.
	DefaultDownloadTimeout = 5 * time.Minute
	// DefaultConnectTimeout bounds establishing the TCP connection.
	DefaultConnectTimeout = 10 * time.Second
	// DefaultTLSHandshakeTimeout bounds the TLS handshake.
	DefaultTLSHandshakeTimeout = 10 * time.Second
	// DefaultResponseHeaderTimeout bounds the wait from the end of the request
	// to the first response header. It applies to every request, the event
	// stream included: headers arrive before the first frame.
	DefaultResponseHeaderTimeout = 15 * time.Second
)

Default bounds a client from New applies. Every one of them is a stall bound, not a service-level expectation: a documented operation answers in well under a second.

View Source
const DefaultMaxStreamFrameBytes = 1 << 20

DefaultMaxStreamFrameBytes bounds the bytes held for one undelivered frame: 1 MiB. The largest real frame is a few KB.

View Source
const DefaultServer = "https://api.0xinsider.com"

DefaultServer is the production API origin. Every operation path in this package is relative to it (for example /api/v1/leaderboard).

View Source
const Version = "0.4.0"

Version is this SDK's release, sent in the User-Agent header.

Variables

View Source
var ErrStreamBuffered = errors.New("oxinsider: GET /api/v1/stream is an unbounded event stream; GetStreamWithResponse would buffer it to EOF and never return. Use OpenStream, or GetStream with RawStreamContext to own the raw body")

ErrStreamBuffered is returned by a client built with New when GetStream or GetStreamWithResponse is called on GET /api/v1/stream outside OpenStream. GetStreamWithResponse reads the body to EOF, which a healthy stream never reaches, so the call would neither return nor bound its memory. Use OpenStream, or RawStreamContext with GetStream to own the raw body.

Functions

func IsLoopbackHost added in v0.2.0

func IsLoopbackHost(host string) bool

IsLoopbackHost reports whether host is localhost, an address in 127.0.0.0/8, or ::1 (bracketed or not).

func IsTrustedDestination added in v0.2.0

func IsTrustedDestination(u *url.URL) bool

IsTrustedDestination reports whether u may receive a credential: https anywhere, or http to a loopback host only.

func NewActivateWebhookSecretRequest added in v0.3.0

func NewActivateWebhookSecretRequest(server string, id int64, params *ActivateWebhookSecretParams) (*http.Request, error)

NewActivateWebhookSecretRequest constructs an http.Request for the ActivateWebhookSecret method

func NewBatchGetMarketFlowRequest added in v0.4.0

func NewBatchGetMarketFlowRequest(server string, params *BatchGetMarketFlowParams, body BatchGetMarketFlowJSONRequestBody) (*http.Request, error)

NewBatchGetMarketFlowRequest calls the generic BatchGetMarketFlow builder with application/json body

func NewBatchGetMarketFlowRequestWithBody added in v0.4.0

func NewBatchGetMarketFlowRequestWithBody(server string, params *BatchGetMarketFlowParams, contentType string, body io.Reader) (*http.Request, error)

NewBatchGetMarketFlowRequestWithBody constructs an http.Request for the BatchGetMarketFlow method, with any body, and a specified content type

func NewBatchGetMarketIntelRequest

func NewBatchGetMarketIntelRequest(server string, params *BatchGetMarketIntelParams, body BatchGetMarketIntelJSONRequestBody) (*http.Request, error)

NewBatchGetMarketIntelRequest calls the generic BatchGetMarketIntel builder with application/json body

func NewBatchGetMarketIntelRequestWithBody

func NewBatchGetMarketIntelRequestWithBody(server string, params *BatchGetMarketIntelParams, contentType string, body io.Reader) (*http.Request, error)

NewBatchGetMarketIntelRequestWithBody constructs an http.Request for the BatchGetMarketIntel method, with any body, and a specified content type

func NewBatchGetTradersRequest

func NewBatchGetTradersRequest(server string, params *BatchGetTradersParams, body BatchGetTradersJSONRequestBody) (*http.Request, error)

NewBatchGetTradersRequest calls the generic BatchGetTraders builder with application/json body

func NewBatchGetTradersRequestWithBody

func NewBatchGetTradersRequestWithBody(server string, params *BatchGetTradersParams, contentType string, body io.Reader) (*http.Request, error)

NewBatchGetTradersRequestWithBody constructs an http.Request for the BatchGetTraders method, with any body, and a specified content type

func NewCancelTraderExportRequest added in v0.4.0

func NewCancelTraderExportRequest(server string, address string, params *CancelTraderExportParams) (*http.Request, error)

NewCancelTraderExportRequest constructs an http.Request for the CancelTraderExport method

func NewCancelWhaleDatasetRequest added in v0.4.0

func NewCancelWhaleDatasetRequest(server string, jobId int64) (*http.Request, error)

NewCancelWhaleDatasetRequest constructs an http.Request for the CancelWhaleDataset method

func NewCreateMcpJsonRpcResponseRequest

func NewCreateMcpJsonRpcResponseRequest(server string, params *CreateMcpJsonRpcResponseParams, body CreateMcpJsonRpcResponseJSONRequestBody) (*http.Request, error)

NewCreateMcpJsonRpcResponseRequest calls the generic CreateMcpJsonRpcResponse builder with application/json body

func NewCreateMcpJsonRpcResponseRequestWithBody

func NewCreateMcpJsonRpcResponseRequestWithBody(server string, params *CreateMcpJsonRpcResponseParams, contentType string, body io.Reader) (*http.Request, error)

NewCreateMcpJsonRpcResponseRequestWithBody constructs an http.Request for the CreateMcpJsonRpcResponse method, with any body, and a specified content type

func NewCreateWebhookRequest

func NewCreateWebhookRequest(server string, params *CreateWebhookParams, body CreateWebhookJSONRequestBody) (*http.Request, error)

NewCreateWebhookRequest calls the generic CreateWebhook builder with application/json body

func NewCreateWebhookRequestWithBody

func NewCreateWebhookRequestWithBody(server string, params *CreateWebhookParams, contentType string, body io.Reader) (*http.Request, error)

NewCreateWebhookRequestWithBody constructs an http.Request for the CreateWebhook method, with any body, and a specified content type

func NewDeleteWebhookRequest

func NewDeleteWebhookRequest(server string, id int64, params *DeleteWebhookParams) (*http.Request, error)

NewDeleteWebhookRequest constructs an http.Request for the DeleteWebhook method

func NewDownloadTraderExportRequest

func NewDownloadTraderExportRequest(server string, address string, params *DownloadTraderExportParams) (*http.Request, error)

NewDownloadTraderExportRequest constructs an http.Request for the DownloadTraderExport method

func NewDownloadWhaleDatasetRequest added in v0.4.0

func NewDownloadWhaleDatasetRequest(server string, jobId int64) (*http.Request, error)

NewDownloadWhaleDatasetRequest constructs an http.Request for the DownloadWhaleDataset method

func NewExploreMarketsRequest

func NewExploreMarketsRequest(server string, params *ExploreMarketsParams) (*http.Request, error)

NewExploreMarketsRequest constructs an http.Request for the ExploreMarkets method

func NewGetAccountIdentityRequest added in v0.2.0

func NewGetAccountIdentityRequest(server string, params *GetAccountIdentityParams) (*http.Request, error)

NewGetAccountIdentityRequest constructs an http.Request for the GetAccountIdentity method

func NewGetApiDiscoveryRequest

func NewGetApiDiscoveryRequest(server string, params *GetApiDiscoveryParams) (*http.Request, error)

NewGetApiDiscoveryRequest constructs an http.Request for the GetApiDiscovery method

func NewGetCoverageRequest added in v0.4.0

func NewGetCoverageRequest(server string, params *GetCoverageParams) (*http.Request, error)

NewGetCoverageRequest constructs an http.Request for the GetCoverage method

func NewGetDailyReportSnapshotRequest

func NewGetDailyReportSnapshotRequest(server string, params *GetDailyReportSnapshotParams) (*http.Request, error)

NewGetDailyReportSnapshotRequest constructs an http.Request for the GetDailyReportSnapshot method

func NewGetEventReplaySinceRequest

func NewGetEventReplaySinceRequest(server string, params *GetEventReplaySinceParams) (*http.Request, error)

NewGetEventReplaySinceRequest constructs an http.Request for the GetEventReplaySince method

func NewGetGameRequest added in v0.4.0

func NewGetGameRequest(server string, eventSlug string, params *GetGameParams) (*http.Request, error)

NewGetGameRequest constructs an http.Request for the GetGame method

func NewGetHealthRequest

func NewGetHealthRequest(server string, params *GetHealthParams) (*http.Request, error)

NewGetHealthRequest constructs an http.Request for the GetHealth method

func NewGetInsiderRadarFlagRequest

func NewGetInsiderRadarFlagRequest(server string, id string, params *GetInsiderRadarFlagParams) (*http.Request, error)

NewGetInsiderRadarFlagRequest constructs an http.Request for the GetInsiderRadarFlag method

func NewGetLargeTradeRequest added in v0.4.0

func NewGetLargeTradeRequest(server string, id string, params *GetLargeTradeParams) (*http.Request, error)

NewGetLargeTradeRequest constructs an http.Request for the GetLargeTrade method

func NewGetMarketCandlesRequest

func NewGetMarketCandlesRequest(server string, conditionId string, params *GetMarketCandlesParams) (*http.Request, error)

NewGetMarketCandlesRequest constructs an http.Request for the GetMarketCandles method

func NewGetMarketContextMarkdownRequest added in v0.2.0

func NewGetMarketContextMarkdownRequest(server string, conditionId string, params *GetMarketContextMarkdownParams) (*http.Request, error)

NewGetMarketContextMarkdownRequest constructs an http.Request for the GetMarketContextMarkdown method

func NewGetMarketFlowRequest added in v0.4.0

func NewGetMarketFlowRequest(server string, conditionId string, params *GetMarketFlowParams) (*http.Request, error)

NewGetMarketFlowRequest constructs an http.Request for the GetMarketFlow method

func NewGetMarketHoldersRequest added in v0.2.0

func NewGetMarketHoldersRequest(server string, conditionId string, params *GetMarketHoldersParams) (*http.Request, error)

NewGetMarketHoldersRequest constructs an http.Request for the GetMarketHolders method

func NewGetMarketIntelRequest

func NewGetMarketIntelRequest(server string, conditionId string, params *GetMarketIntelParams) (*http.Request, error)

NewGetMarketIntelRequest constructs an http.Request for the GetMarketIntel method

func NewGetMarketSnapshotRequest

func NewGetMarketSnapshotRequest(server string, conditionId string, params *GetMarketSnapshotParams) (*http.Request, error)

NewGetMarketSnapshotRequest constructs an http.Request for the GetMarketSnapshot method

func NewGetMonthlyReportSnapshotRequest

func NewGetMonthlyReportSnapshotRequest(server string, params *GetMonthlyReportSnapshotParams) (*http.Request, error)

NewGetMonthlyReportSnapshotRequest constructs an http.Request for the GetMonthlyReportSnapshot method

func NewGetPickOfTheDayArchiveRequest

func NewGetPickOfTheDayArchiveRequest(server string, params *GetPickOfTheDayArchiveParams) (*http.Request, error)

NewGetPickOfTheDayArchiveRequest constructs an http.Request for the GetPickOfTheDayArchive method

func NewGetPickOfTheDayLedgerRequest added in v0.2.0

func NewGetPickOfTheDayLedgerRequest(server string, params *GetPickOfTheDayLedgerParams) (*http.Request, error)

NewGetPickOfTheDayLedgerRequest constructs an http.Request for the GetPickOfTheDayLedger method

func NewGetPickOfTheDayRequest

func NewGetPickOfTheDayRequest(server string, params *GetPickOfTheDayParams) (*http.Request, error)

NewGetPickOfTheDayRequest constructs an http.Request for the GetPickOfTheDay method

func NewGetPlatformsRequest

func NewGetPlatformsRequest(server string, params *GetPlatformsParams) (*http.Request, error)

NewGetPlatformsRequest constructs an http.Request for the GetPlatforms method

func NewGetPositionTimelineByIdRequest

func NewGetPositionTimelineByIdRequest(server string, trader string, params *GetPositionTimelineByIdParams) (*http.Request, error)

NewGetPositionTimelineByIdRequest constructs an http.Request for the GetPositionTimelineById method

func NewGetPositionTimelineRequest

func NewGetPositionTimelineRequest(server string, address string, params *GetPositionTimelineParams) (*http.Request, error)

NewGetPositionTimelineRequest constructs an http.Request for the GetPositionTimeline method

func NewGetReportsRequest

func NewGetReportsRequest(server string, params *GetReportsParams) (*http.Request, error)

NewGetReportsRequest constructs an http.Request for the GetReports method

func NewGetStreamRequest

func NewGetStreamRequest(server string, params *GetStreamParams) (*http.Request, error)

NewGetStreamRequest constructs an http.Request for the GetStream method

func NewGetSuspiciousTradeRequest added in v0.4.0

func NewGetSuspiciousTradeRequest(server string, id string, params *GetSuspiciousTradeParams) (*http.Request, error)

NewGetSuspiciousTradeRequest constructs an http.Request for the GetSuspiciousTrade method

func NewGetTraderCategoryRecordsRequest added in v0.2.0

func NewGetTraderCategoryRecordsRequest(server string, address string, params *GetTraderCategoryRecordsParams) (*http.Request, error)

NewGetTraderCategoryRecordsRequest constructs an http.Request for the GetTraderCategoryRecords method

func NewGetTraderContextMarkdownRequest

func NewGetTraderContextMarkdownRequest(server string, address string, params *GetTraderContextMarkdownParams) (*http.Request, error)

NewGetTraderContextMarkdownRequest constructs an http.Request for the GetTraderContextMarkdown method

func NewGetTraderContextRequest

func NewGetTraderContextRequest(server string, address string, params *GetTraderContextParams) (*http.Request, error)

NewGetTraderContextRequest constructs an http.Request for the GetTraderContext method

func NewGetTraderExportSnapshotRequest

func NewGetTraderExportSnapshotRequest(server string, address string, params *GetTraderExportSnapshotParams) (*http.Request, error)

NewGetTraderExportSnapshotRequest constructs an http.Request for the GetTraderExportSnapshot method

func NewGetTraderExportStatusRequest

func NewGetTraderExportStatusRequest(server string, address string, params *GetTraderExportStatusParams) (*http.Request, error)

NewGetTraderExportStatusRequest constructs an http.Request for the GetTraderExportStatus method

func NewGetTraderGradeAtRequest added in v0.4.0

func NewGetTraderGradeAtRequest(server string, address string, params *GetTraderGradeAtParams) (*http.Request, error)

NewGetTraderGradeAtRequest constructs an http.Request for the GetTraderGradeAt method

func NewGetTraderPnlRequest

func NewGetTraderPnlRequest(server string, address string, params *GetTraderPnlParams) (*http.Request, error)

NewGetTraderPnlRequest constructs an http.Request for the GetTraderPnl method

func NewGetTraderRequest

func NewGetTraderRequest(server string, address string, params *GetTraderParams) (*http.Request, error)

NewGetTraderRequest constructs an http.Request for the GetTrader method

func NewGetUsageRequest

func NewGetUsageRequest(server string, params *GetUsageParams) (*http.Request, error)

NewGetUsageRequest constructs an http.Request for the GetUsage method

func NewGetWebhookRequest

func NewGetWebhookRequest(server string, id int64, params *GetWebhookParams) (*http.Request, error)

NewGetWebhookRequest constructs an http.Request for the GetWebhook method

func NewGetWeeklyReportSnapshotRequest

func NewGetWeeklyReportSnapshotRequest(server string, params *GetWeeklyReportSnapshotParams) (*http.Request, error)

NewGetWeeklyReportSnapshotRequest constructs an http.Request for the GetWeeklyReportSnapshot method

func NewGetWhaleDatasetStatusRequest added in v0.4.0

func NewGetWhaleDatasetStatusRequest(server string, jobId int64) (*http.Request, error)

NewGetWhaleDatasetStatusRequest constructs an http.Request for the GetWhaleDatasetStatus method

func NewGetWhaleTradeRequest

func NewGetWhaleTradeRequest(server string, id string, params *GetWhaleTradeParams) (*http.Request, error)

NewGetWhaleTradeRequest constructs an http.Request for the GetWhaleTrade method

func NewListGamesRequest added in v0.4.0

func NewListGamesRequest(server string, params *ListGamesParams) (*http.Request, error)

NewListGamesRequest constructs an http.Request for the ListGames method

func NewListInsiderRadarRequest

func NewListInsiderRadarRequest(server string, params *ListInsiderRadarParams) (*http.Request, error)

NewListInsiderRadarRequest constructs an http.Request for the ListInsiderRadar method

func NewListLargePositionsRequest

func NewListLargePositionsRequest(server string, params *ListLargePositionsParams) (*http.Request, error)

NewListLargePositionsRequest constructs an http.Request for the ListLargePositions method

func NewListLargeTradeCounterpartyExecutionsRequest added in v0.4.0

func NewListLargeTradeCounterpartyExecutionsRequest(server string, id string, params *ListLargeTradeCounterpartyExecutionsParams) (*http.Request, error)

NewListLargeTradeCounterpartyExecutionsRequest constructs an http.Request for the ListLargeTradeCounterpartyExecutions method

func NewListLargeTradeCounterpartyMakersRequest added in v0.4.0

func NewListLargeTradeCounterpartyMakersRequest(server string, id string, executionId string, params *ListLargeTradeCounterpartyMakersParams) (*http.Request, error)

NewListLargeTradeCounterpartyMakersRequest constructs an http.Request for the ListLargeTradeCounterpartyMakers method

func NewListLargeTradeHistoryRequest added in v0.4.0

func NewListLargeTradeHistoryRequest(server string, params *ListLargeTradeHistoryParams) (*http.Request, error)

NewListLargeTradeHistoryRequest constructs an http.Request for the ListLargeTradeHistory method

func NewListLargeTradesRequest added in v0.4.0

func NewListLargeTradesRequest(server string, params *ListLargeTradesParams) (*http.Request, error)

NewListLargeTradesRequest constructs an http.Request for the ListLargeTrades method

func NewListLeaderboardRequest

func NewListLeaderboardRequest(server string, params *ListLeaderboardParams) (*http.Request, error)

NewListLeaderboardRequest constructs an http.Request for the ListLeaderboard method

func NewListPositionsRequest

func NewListPositionsRequest(server string, params *ListPositionsParams) (*http.Request, error)

NewListPositionsRequest constructs an http.Request for the ListPositions method

func NewListPreGameSideObservationsRequest added in v0.4.0

func NewListPreGameSideObservationsRequest(server string, params *ListPreGameSideObservationsParams) (*http.Request, error)

NewListPreGameSideObservationsRequest constructs an http.Request for the ListPreGameSideObservations method

func NewListPreGameSidesRequest added in v0.4.0

func NewListPreGameSidesRequest(server string, params *ListPreGameSidesParams) (*http.Request, error)

NewListPreGameSidesRequest constructs an http.Request for the ListPreGameSides method

func NewListSharpMoneyFlowsRequest

func NewListSharpMoneyFlowsRequest(server string, params *ListSharpMoneyFlowsParams) (*http.Request, error)

NewListSharpMoneyFlowsRequest constructs an http.Request for the ListSharpMoneyFlows method

func NewListSmartMoneyFlowsRequest

func NewListSmartMoneyFlowsRequest(server string, params *ListSmartMoneyFlowsParams) (*http.Request, error)

NewListSmartMoneyFlowsRequest constructs an http.Request for the ListSmartMoneyFlows method

func NewListSportsEdgeObservationsRequest

func NewListSportsEdgeObservationsRequest(server string, params *ListSportsEdgeObservationsParams) (*http.Request, error)

NewListSportsEdgeObservationsRequest constructs an http.Request for the ListSportsEdgeObservations method

func NewListSportsEdgeSignalsRequest

func NewListSportsEdgeSignalsRequest(server string, params *ListSportsEdgeSignalsParams) (*http.Request, error)

NewListSportsEdgeSignalsRequest constructs an http.Request for the ListSportsEdgeSignals method

func NewListSuspiciousTradesRequest added in v0.4.0

func NewListSuspiciousTradesRequest(server string, params *ListSuspiciousTradesParams) (*http.Request, error)

NewListSuspiciousTradesRequest constructs an http.Request for the ListSuspiciousTrades method

func NewListTrendingWalletsRequest

func NewListTrendingWalletsRequest(server string, params *ListTrendingWalletsParams) (*http.Request, error)

NewListTrendingWalletsRequest constructs an http.Request for the ListTrendingWallets method

func NewListWebhookDeliveriesRequest

func NewListWebhookDeliveriesRequest(server string, id int64, params *ListWebhookDeliveriesParams) (*http.Request, error)

NewListWebhookDeliveriesRequest constructs an http.Request for the ListWebhookDeliveries method

func NewListWebhookEventsRequest

func NewListWebhookEventsRequest(server string, params *ListWebhookEventsParams) (*http.Request, error)

NewListWebhookEventsRequest constructs an http.Request for the ListWebhookEvents method

func NewListWebhooksRequest

func NewListWebhooksRequest(server string, params *ListWebhooksParams) (*http.Request, error)

NewListWebhooksRequest constructs an http.Request for the ListWebhooks method

func NewListWhaleTradeCounterpartyExecutionsRequest

func NewListWhaleTradeCounterpartyExecutionsRequest(server string, id string, params *ListWhaleTradeCounterpartyExecutionsParams) (*http.Request, error)

NewListWhaleTradeCounterpartyExecutionsRequest constructs an http.Request for the ListWhaleTradeCounterpartyExecutions method

func NewListWhaleTradeCounterpartyMakersRequest

func NewListWhaleTradeCounterpartyMakersRequest(server string, id string, executionId string, params *ListWhaleTradeCounterpartyMakersParams) (*http.Request, error)

NewListWhaleTradeCounterpartyMakersRequest constructs an http.Request for the ListWhaleTradeCounterpartyMakers method

func NewListWhaleTradeHistoryRequest

func NewListWhaleTradeHistoryRequest(server string, params *ListWhaleTradeHistoryParams) (*http.Request, error)

NewListWhaleTradeHistoryRequest constructs an http.Request for the ListWhaleTradeHistory method

func NewListWhaleTradesRequest

func NewListWhaleTradesRequest(server string, params *ListWhaleTradesParams) (*http.Request, error)

NewListWhaleTradesRequest constructs an http.Request for the ListWhaleTrades method

func NewOpenMcpEventStreamRequest

func NewOpenMcpEventStreamRequest(server string, params *OpenMcpEventStreamParams) (*http.Request, error)

NewOpenMcpEventStreamRequest constructs an http.Request for the OpenMcpEventStream method

func NewPrepareWebhookSecretRequest added in v0.3.0

func NewPrepareWebhookSecretRequest(server string, id int64, params *PrepareWebhookSecretParams) (*http.Request, error)

NewPrepareWebhookSecretRequest constructs an http.Request for the PrepareWebhookSecret method

func NewRedeliverWebhookDeliveryRequest added in v0.2.0

func NewRedeliverWebhookDeliveryRequest(server string, id int64, deliveryId int64, params *RedeliverWebhookDeliveryParams) (*http.Request, error)

NewRedeliverWebhookDeliveryRequest constructs an http.Request for the RedeliverWebhookDelivery method

func NewRedirectApiOpenapiSpecRequest

func NewRedirectApiOpenapiSpecRequest(server string, params *RedirectApiOpenapiSpecParams) (*http.Request, error)

NewRedirectApiOpenapiSpecRequest constructs an http.Request for the RedirectApiOpenapiSpec method

func NewRegisterAgentRequest added in v0.2.0

func NewRegisterAgentRequest(server string, params *RegisterAgentParams) (*http.Request, error)

NewRegisterAgentRequest constructs an http.Request for the RegisterAgent method

func NewRetireWebhookSecretRequest added in v0.3.0

func NewRetireWebhookSecretRequest(server string, id int64, params *RetireWebhookSecretParams) (*http.Request, error)

NewRetireWebhookSecretRequest constructs an http.Request for the RetireWebhookSecret method

func NewRotateWebhookSecretRequest

func NewRotateWebhookSecretRequest(server string, id int64, params *RotateWebhookSecretParams) (*http.Request, error)

NewRotateWebhookSecretRequest constructs an http.Request for the RotateWebhookSecret method

func NewSearchContentRequest

func NewSearchContentRequest(server string, params *SearchContentParams) (*http.Request, error)

NewSearchContentRequest constructs an http.Request for the SearchContent method

func NewSearchMarketsRequest

func NewSearchMarketsRequest(server string, params *SearchMarketsParams) (*http.Request, error)

NewSearchMarketsRequest constructs an http.Request for the SearchMarkets method

func NewSubmitTraderExportRequest

func NewSubmitTraderExportRequest(server string, address string, params *SubmitTraderExportParams) (*http.Request, error)

NewSubmitTraderExportRequest constructs an http.Request for the SubmitTraderExport method

func NewSubmitWhaleDatasetRequest added in v0.4.0

func NewSubmitWhaleDatasetRequest(server string, body SubmitWhaleDatasetJSONRequestBody) (*http.Request, error)

NewSubmitWhaleDatasetRequest calls the generic SubmitWhaleDataset builder with application/json body

func NewSubmitWhaleDatasetRequestWithBody added in v0.4.0

func NewSubmitWhaleDatasetRequestWithBody(server string, contentType string, body io.Reader) (*http.Request, error)

NewSubmitWhaleDatasetRequestWithBody constructs an http.Request for the SubmitWhaleDataset method, with any body, and a specified content type

func NewUpdateWebhookRequest

func NewUpdateWebhookRequest(server string, id int64, params *UpdateWebhookParams, body UpdateWebhookJSONRequestBody) (*http.Request, error)

NewUpdateWebhookRequest calls the generic UpdateWebhook builder with application/json body

func NewUpdateWebhookRequestWithBody

func NewUpdateWebhookRequestWithBody(server string, id int64, params *UpdateWebhookParams, contentType string, body io.Reader) (*http.Request, error)

NewUpdateWebhookRequestWithBody constructs an http.Request for the UpdateWebhook method, with any body, and a specified content type

func NewVerifyWebhookRequest

func NewVerifyWebhookRequest(server string, id int64, params *VerifyWebhookParams, body VerifyWebhookJSONRequestBody) (*http.Request, error)

NewVerifyWebhookRequest calls the generic VerifyWebhook builder with application/json body

func NewVerifyWebhookRequestWithBody

func NewVerifyWebhookRequestWithBody(server string, id int64, params *VerifyWebhookParams, contentType string, body io.Reader) (*http.Request, error)

NewVerifyWebhookRequestWithBody constructs an http.Request for the VerifyWebhook method, with any body, and a specified content type

func RawStreamContext added in v0.2.0

func RawStreamContext(ctx context.Context) context.Context

RawStreamContext returns a context that lets GetStream hand you the raw *http.Response of GET /api/v1/stream through a client built with New. You then own the body: read it incrementally and close it. Without this marker New's client refuses the request with ErrStreamBuffered, because the generated GetStreamWithResponse would read the unbounded body to EOF. OpenStream is the supported path; this is the escape hatch.

Types

type AccountIdentity added in v0.2.0

type AccountIdentity struct {
	Data struct {
		CredentialId   int                               `json:"credential_id"`
		CredentialKind AccountIdentityDataCredentialKind `json:"credential_kind"`

		// CredentialStatus The credential is currently valid; revoked, expired or unknown credentials are rejected.
		CredentialStatus AccountIdentityDataCredentialStatus `json:"credential_status"`
		Entitlement      struct {
			PaidDataAccess AccountIdentityDataEntitlementPaidDataAccess `json:"paid_data_access"`

			// RecoveryAction When paid data access is lapsed, the caller should renew the subscription; otherwise null.
			RecoveryAction AccountIdentityDataEntitlementRecoveryAction `json:"recovery_action"`
		} `json:"entitlement"`

		// Scopes Approved OAuth scopes; null for full developer-key access.
		Scopes []string `json:"scopes"`
		UserId int      `json:"user_id"`
	} `json:"data"`
	Meta   ResponseMeta          `json:"meta"`
	Object AccountIdentityObject `json:"object"`
}

AccountIdentity defines model for AccountIdentity.

type AccountIdentityDataCredentialKind added in v0.2.0

type AccountIdentityDataCredentialKind string

AccountIdentityDataCredentialKind defines model for AccountIdentity.Data.CredentialKind.

const (
	ApiKey     AccountIdentityDataCredentialKind = "api_key"
	OauthGrant AccountIdentityDataCredentialKind = "oauth_grant"
)

Defines values for AccountIdentityDataCredentialKind.

func (AccountIdentityDataCredentialKind) Valid added in v0.2.0

Valid indicates whether the value is a known member of the AccountIdentityDataCredentialKind enum.

type AccountIdentityDataCredentialStatus added in v0.3.0

type AccountIdentityDataCredentialStatus string

AccountIdentityDataCredentialStatus The credential is currently valid; revoked, expired or unknown credentials are rejected.

const (
	AccountIdentityDataCredentialStatusActive AccountIdentityDataCredentialStatus = "active"
)

Defines values for AccountIdentityDataCredentialStatus.

func (AccountIdentityDataCredentialStatus) Valid added in v0.3.0

Valid indicates whether the value is a known member of the AccountIdentityDataCredentialStatus enum.

type AccountIdentityDataEntitlementPaidDataAccess added in v0.3.0

type AccountIdentityDataEntitlementPaidDataAccess string

AccountIdentityDataEntitlementPaidDataAccess defines model for AccountIdentity.Data.Entitlement.PaidDataAccess.

const (
	AccountIdentityDataEntitlementPaidDataAccessActive AccountIdentityDataEntitlementPaidDataAccess = "active"
	AccountIdentityDataEntitlementPaidDataAccessLapsed AccountIdentityDataEntitlementPaidDataAccess = "lapsed"
)

Defines values for AccountIdentityDataEntitlementPaidDataAccess.

func (AccountIdentityDataEntitlementPaidDataAccess) Valid added in v0.3.0

Valid indicates whether the value is a known member of the AccountIdentityDataEntitlementPaidDataAccess enum.

type AccountIdentityDataEntitlementRecoveryAction added in v0.3.0

type AccountIdentityDataEntitlementRecoveryAction string

AccountIdentityDataEntitlementRecoveryAction When paid data access is lapsed, the caller should renew the subscription; otherwise null.

const (
	RenewSubscription AccountIdentityDataEntitlementRecoveryAction = "renew_subscription"
)

Defines values for AccountIdentityDataEntitlementRecoveryAction.

func (AccountIdentityDataEntitlementRecoveryAction) Valid added in v0.3.0

Valid indicates whether the value is a known member of the AccountIdentityDataEntitlementRecoveryAction enum.

type AccountIdentityObject added in v0.2.0

type AccountIdentityObject string

AccountIdentityObject defines model for AccountIdentity.Object.

const (
	Account AccountIdentityObject = "account"
)

Defines values for AccountIdentityObject.

func (AccountIdentityObject) Valid added in v0.2.0

func (e AccountIdentityObject) Valid() bool

Valid indicates whether the value is a known member of the AccountIdentityObject enum.

type ActivateWebhookSecret200JSONResponseBodyObject added in v0.3.0

type ActivateWebhookSecret200JSONResponseBodyObject string

ActivateWebhookSecret200JSONResponseBodyObject defines parameters for ActivateWebhookSecret.

const (
	ActivateWebhookSecret200JSONResponseBodyObjectWebhook ActivateWebhookSecret200JSONResponseBodyObject = "webhook"
)

Defines values for ActivateWebhookSecret200JSONResponseBodyObject.

func (ActivateWebhookSecret200JSONResponseBodyObject) Valid added in v0.3.0

Valid indicates whether the value is a known member of the ActivateWebhookSecret200JSONResponseBodyObject enum.

type ActivateWebhookSecretParams added in v0.3.0

type ActivateWebhookSecretParams struct {
	// IdempotencyKey Optional safe-retry key. Reuse the same value only when retrying the exact same mutation request body; a different body returns 422 and an in-flight matching request returns 409.
	IdempotencyKey *string `json:"Idempotency-Key,omitempty"`
}

ActivateWebhookSecretParams defines parameters for ActivateWebhookSecret.

type ActivateWebhookSecretResponse added in v0.3.0

type ActivateWebhookSecretResponse struct {
	Body         []byte
	HTTPResponse *http.Response
	// JSON200 the response for an HTTP 200 `application/json` response
	JSON200 *struct {
		Data   WebhookEndpoint                                `json:"data"`
		Meta   ResponseMeta                                   `json:"meta"`
		Object ActivateWebhookSecret200JSONResponseBodyObject `json:"object"`
	}
	// JSON400 the response for an HTTP 400 `application/json` response
	JSON400 *ApiError
	// JSON401 the response for an HTTP 401 `application/json` response
	JSON401 *ApiError
	// JSON402 the response for an HTTP 402 `application/json` response
	JSON402 *ApiError
	// JSON403 the response for an HTTP 403 `application/json` response
	JSON403 *ApiError
	// JSON404 the response for an HTTP 404 `application/json` response
	JSON404 *ApiError
	// JSON408 the response for an HTTP 408 `application/json` response
	JSON408 *ApiError
	// JSON409 the response for an HTTP 409 `application/json` response
	JSON409 *ApiError
	// JSON422 the response for an HTTP 422 `application/json` response
	JSON422 *ApiError
	// JSON423 the response for an HTTP 423 `application/json` response
	JSON423 *ApiError
	// JSON429 the response for an HTTP 429 `application/json` response
	JSON429 *ApiError
	// JSON500 the response for an HTTP 500 `application/json` response
	JSON500 *ApiError
	// JSON503 the response for an HTTP 503 `application/json` response
	JSON503 *ApiError
}

func ParseActivateWebhookSecretResponse added in v0.3.0

func ParseActivateWebhookSecretResponse(rsp *http.Response) (*ActivateWebhookSecretResponse, error)

ParseActivateWebhookSecretResponse parses an HTTP response from a ActivateWebhookSecretWithResponse call

func (ActivateWebhookSecretResponse) ContentType added in v0.3.0

func (r ActivateWebhookSecretResponse) ContentType() string

ContentType is a convenience method to retrieve the Content-Type value from the HTTP response headers

func (ActivateWebhookSecretResponse) GetBody added in v0.3.0

func (r ActivateWebhookSecretResponse) GetBody() []byte

GetBody returns the raw response body bytes

func (ActivateWebhookSecretResponse) GetJSON200 added in v0.3.0

func (r ActivateWebhookSecretResponse) GetJSON200() *struct {
	Data   WebhookEndpoint                                `json:"data"`
	Meta   ResponseMeta                                   `json:"meta"`
	Object ActivateWebhookSecret200JSONResponseBodyObject `json:"object"`
}

GetJSON200 returns the response for an HTTP 200 `application/json` response

func (ActivateWebhookSecretResponse) GetJSON400 added in v0.3.0

func (r ActivateWebhookSecretResponse) GetJSON400() *ApiError

GetJSON400 returns the response for an HTTP 400 `application/json` response

func (ActivateWebhookSecretResponse) GetJSON401 added in v0.3.0

func (r ActivateWebhookSecretResponse) GetJSON401() *ApiError

GetJSON401 returns the response for an HTTP 401 `application/json` response

func (ActivateWebhookSecretResponse) GetJSON402 added in v0.3.0

func (r ActivateWebhookSecretResponse) GetJSON402() *ApiError

GetJSON402 returns the response for an HTTP 402 `application/json` response

func (ActivateWebhookSecretResponse) GetJSON403 added in v0.3.0

func (r ActivateWebhookSecretResponse) GetJSON403() *ApiError

GetJSON403 returns the response for an HTTP 403 `application/json` response

func (ActivateWebhookSecretResponse) GetJSON404 added in v0.3.0

func (r ActivateWebhookSecretResponse) GetJSON404() *ApiError

GetJSON404 returns the response for an HTTP 404 `application/json` response

func (ActivateWebhookSecretResponse) GetJSON408 added in v0.3.0

func (r ActivateWebhookSecretResponse) GetJSON408() *ApiError

GetJSON408 returns the response for an HTTP 408 `application/json` response

func (ActivateWebhookSecretResponse) GetJSON409 added in v0.3.0

func (r ActivateWebhookSecretResponse) GetJSON409() *ApiError

GetJSON409 returns the response for an HTTP 409 `application/json` response

func (ActivateWebhookSecretResponse) GetJSON422 added in v0.3.0

func (r ActivateWebhookSecretResponse) GetJSON422() *ApiError

GetJSON422 returns the response for an HTTP 422 `application/json` response

func (ActivateWebhookSecretResponse) GetJSON423 added in v0.3.0

func (r ActivateWebhookSecretResponse) GetJSON423() *ApiError

GetJSON423 returns the response for an HTTP 423 `application/json` response

func (ActivateWebhookSecretResponse) GetJSON429 added in v0.3.0

func (r ActivateWebhookSecretResponse) GetJSON429() *ApiError

GetJSON429 returns the response for an HTTP 429 `application/json` response

func (ActivateWebhookSecretResponse) GetJSON500 added in v0.3.0

func (r ActivateWebhookSecretResponse) GetJSON500() *ApiError

GetJSON500 returns the response for an HTTP 500 `application/json` response

func (ActivateWebhookSecretResponse) GetJSON503 added in v0.3.0

func (r ActivateWebhookSecretResponse) GetJSON503() *ApiError

GetJSON503 returns the response for an HTTP 503 `application/json` response

func (ActivateWebhookSecretResponse) Status added in v0.3.0

Status returns HTTPResponse.Status

func (ActivateWebhookSecretResponse) StatusCode added in v0.3.0

func (r ActivateWebhookSecretResponse) StatusCode() int

StatusCode returns HTTPResponse.StatusCode

type AgentRegistration added in v0.2.0

type AgentRegistration struct {
	// ApiKey The sandbox key. Send it as Authorization: Bearer <api_key> to the sandbox. The last 8 hex characters are a checksum (the first 4 bytes of SHA-256 over the rest of the key), so the sandbox can tell a mistyped key from a real one. It is not a secret and unlocks no production data.
	ApiKey      string                       `json:"api_key"`
	CreatedAt   time.Time                    `json:"created_at"`
	Environment AgentRegistrationEnvironment `json:"environment"`

	// LiveAccess What live data needs, and where each credential comes from. Both need a person: an account with an active Pro subscription.
	LiveAccess struct {
		// ApiBaseUrl The production V1 base URL.
		ApiBaseUrl string `json:"api_base_url"`

		// ApiKeysUrl Where a signed-in Pro user creates a live key (oxi_sk_live_).
		ApiKeysUrl string `json:"api_keys_url"`

		// AuthGuideUrl The authentication walkthrough for agents.
		AuthGuideUrl string `json:"auth_guide_url"`

		// OauthAuthorizationServerMetadataUrl RFC 8414 authorization server metadata, for an OAuth 2.1 grant the user approves.
		OauthAuthorizationServerMetadataUrl string `json:"oauth_authorization_server_metadata_url"`

		// OauthRegistrationEndpoint RFC 7591 dynamic client registration for public OAuth clients.
		OauthRegistrationEndpoint string `json:"oauth_registration_endpoint"`

		// PricingUrl The Pro plan.
		PricingUrl string `json:"pricing_url"`

		// Requirement What a live credential needs, in one sentence.
		Requirement string `json:"requirement"`
	} `json:"live_access"`

	// Livemode Always false: this key never reaches live data.
	Livemode AgentRegistrationLivemode `json:"livemode"`
	Sandbox  struct {
		// ApiBaseUrl The sandbox V1 base URL. Every documented operation answers here with example data, except GET /api/v1/stream: a Server-Sent Events stream is a live connection rather than a body, so the sandbox answers it with 400.
		ApiBaseUrl string `json:"api_base_url"`

		// FirstRequestUrl A read to send with the key.
		FirstRequestUrl string `json:"first_request_url"`

		// OpenapiUrl The OpenAPI document, served by the sandbox.
		OpenapiUrl string `json:"openapi_url"`
	} `json:"sandbox"`
}

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.

type AgentRegistrationEnvironment added in v0.2.0

type AgentRegistrationEnvironment string

AgentRegistrationEnvironment defines model for AgentRegistration.Environment.

const (
	Sandbox AgentRegistrationEnvironment = "sandbox"
)

Defines values for AgentRegistrationEnvironment.

func (AgentRegistrationEnvironment) Valid added in v0.2.0

Valid indicates whether the value is a known member of the AgentRegistrationEnvironment enum.

type AgentRegistrationLivemode added in v0.2.0

type AgentRegistrationLivemode bool

AgentRegistrationLivemode Always false: this key never reaches live data.

const (
	AgentRegistrationLivemodeFalse AgentRegistrationLivemode = false
)

Defines values for AgentRegistrationLivemode.

func (AgentRegistrationLivemode) Valid added in v0.2.0

func (e AgentRegistrationLivemode) Valid() bool

Valid indicates whether the value is a known member of the AgentRegistrationLivemode enum.

type ApiDiscovery

type ApiDiscovery struct {
	// ApiBaseUrl Canonical API origin for public V1 requests.
	ApiBaseUrl string `json:"api_base_url"`

	// AuthenticatedRoutes The complete authenticated route index: one entry per authenticated route this spec documents, in "<METHOD> <path>" form, not a representative subset. GET /api/v1 is the unauthenticated entrypoint an agent hits first, so it hands back the whole authenticated surface rather than a sample the caller would have to guess around. The example on GET /api/v1 is abridged for readability -- the live response returns all of them. Kept in lockstep with this spec by review: it is a hand-maintained const in backend/src/api_v1/discovery.rs and no automated check compares the two, so treat this spec as authoritative if they ever disagree.
	AuthenticatedRoutes []string                   `json:"authenticated_routes"`
	Authentication      ApiDiscoveryAuthentication `json:"authentication"`

	// DocsUrl Full agent-readable API reference.
	DocsUrl string `json:"docs_url"`

	// HealthUrl Unauthenticated API health endpoint.
	HealthUrl string `json:"health_url"`

	// OpenapiUrl Canonical web-origin OpenAPI JSON document.
	OpenapiUrl string `json:"openapi_url"`

	// ProtectedResourceMetadataUrl RFC 9728 protected-resource metadata for the API origin: the document every V1 401 names in its WWW-Authenticate challenge (resource, bearer_methods_supported, resource_documentation). The remote MCP server has its own document at /.well-known/oauth-protected-resource/api/v1/mcp.
	ProtectedResourceMetadataUrl string `json:"protected_resource_metadata_url"`
}

ApiDiscovery defines model for ApiDiscovery.

type ApiDiscoveryAuthentication

type ApiDiscoveryAuthentication string

ApiDiscoveryAuthentication defines model for ApiDiscovery.Authentication.

const (
	BearerAPIKeyRequiredForDataEndpointsDiscoveryapiv1HealthCoverageapiv1coverageAndItsDeprecatedAliasapiv1platformsThePickOfTheDayCommitmentLedgerapiv1pickOfTheDayledgerAndTheMCPHandshakeInitializePingToolslistOnapiv1mcpArePublicA401CarriesWWWAuthenticateWithTheResourceMetadataURL ApiDiscoveryAuthentication = "" /* 360-byte string literal not displayed */
)

Defines values for ApiDiscoveryAuthentication.

func (ApiDiscoveryAuthentication) Valid

func (e ApiDiscoveryAuthentication) Valid() bool

Valid indicates whether the value is a known member of the ApiDiscoveryAuthentication enum.

type ApiError

type ApiError struct {
	Error struct {
		// Code FROZEN: an existing value never changes meaning. request_timeout (408, #16146) was added the way insufficient_scope was: the handler did not answer inside the server's 30-second timeout. Retry-After and retry_at ride on it only for a safe method (GET, HEAD); a timed-out mutation may have completed, so check its state and reuse its Idempotency-Key.
		Code      ApiErrorErrorCode `json:"code"`
		DocUrl    *string           `json:"doc_url,omitempty"`
		Freshness *FreshnessFailure `json:"freshness,omitempty"`
		Message   string            `json:"message"`
		Param     *string           `json:"param,omitempty"`

		// Reason ADDITIVE (#7209). The specific, actionable cause behind `code`, when there is one more specific than the code itself. `code` keeps its published values, so existing clients are unaffected; new clients branch on `reason`. Omitted when the code already says everything we know. pick_not_released: no Pick of the Day is published for the current product day; schedule one request against retry_at instead of polling. unknown_endpoint: the PATH is not a route on this API -- read GET /api/v1, do not retry. trader_not_tracked: the wallet is real and the URL is right, but the trader is outside the HOT/WARM sync tiers -- stop asking for this wallet. cursor_expired: pagination went stale mid-walk -- re-request the first page and continue. read_model_warming: the requested endpoint cannot serve its read model yet; exact causes are endpoint-specific and can include a cold or contended refresh or a dependency that prevented refresh. database_unavailable: the API's database or its connection pool is temporarily unreachable (a connection-class failure, not a query fault); code stays rate_limit_unavailable, nothing is rate-limited, retry after Retry-After / retry_at. idempotency_in_progress: retain the exact Idempotency-Key and request body, then retry shortly. webhook_delivery_in_progress: retry the URL or signing-secret configuration change after the destination's active request completes. request_accounting_unavailable: accounting capacity is unavailable before the handler executes; retry after Retry-After / retry_at. sandbox_api_key: the credential is a sandbox key (oxi_sk_test_) from POST /api/v1/agents/register, which only the sandbox server accepts -- call the sandbox base URL with it, or get a live key or OAuth access token; do not retry it here. api_key_in_query: the key was sent as a ?token= query parameter, which no route reads because URLs land in logs and history; the key itself was not checked -- resend it as Authorization: Bearer. subscription_inactive: the key is valid but the account's Pro subscription has lapsed (402 subscription_required); permanent until a person reactivates at https://0xinsider.com/billing, which the message names -- stop retrying on a schedule and surface the link. The key owner is emailed once per lapse. monthly_quota_exceeded: the account has used the requests Pro includes for the UTC calendar month (429 rate_limited); retry_at and Retry-After name the first of next month, the only retry that can succeed, and the message names https://0xinsider.com/developers, where pay as you go for requests over the quota is turned on. The X-Monthly-Quota-Limit, X-Monthly-Quota-Remaining and X-Monthly-Quota-Reset headers on every authenticated response say how close the account is. invalid_query, invalid_path, invalid_body (400 bad_request, #16146): a query parameter, a path segment or the JSON body did not parse or does not fit the route's schema, so no handler ran; param names the field when the parser named one (a query key, a path segment, a JSON path such as traders[0], or body); fix the request, never retry it as sent. unsupported_media_type (415 bad_request, param content-type): send the body with Content-Type: application/json. payload_too_large (413 bad_request, param body): the body is over 1048576 bytes. method_not_allowed (405 bad_request): the path is a route but not with this method; the Allow header names the methods it serves. ip_rate_limited (429 rate_limited, #16380): the per-address budget every caller behind one IP shares, counted before authentication, is spent; not the key's own window, and the RateLimit-* headers describe that bucket. ip_throttled (429 rate_limited): the address is in a cooldown after sustained over-limit traffic; Retry-After is minutes to days, and a request before it does not shorten the cooldown.
		Reason *ApiErrorErrorReason `json:"reason,omitempty"`

		// RetryAt The recommended next request instant (RFC3339), always in the future. Present on every retryable error: `pick_not_released`, `rate_limited`, `rate_limit_unavailable`, and `read_model_warming`. Omitted otherwise. The absolute twin of `Retry-After`; prefer the header for the sleep duration. For `pick_not_released`, the earliest of the next scheduled release, the next automatic selector attempt, the operating-window start, or about 60 seconds. See that response.
		RetryAt *time.Time `json:"retry_at,omitempty"`
	} `json:"error"`
	Meta   ResponseMeta   `json:"meta"`
	Object ApiErrorObject `json:"object"`
}

ApiError defines model for ApiError.

type ApiErrorBody

type ApiErrorBody struct {
	// Code FROZEN: an existing value never changes meaning. request_timeout (408, #16146) was added the way insufficient_scope was: the handler did not answer inside the server's 30-second timeout. Retry-After and retry_at ride on it only for a safe method (GET, HEAD); a timed-out mutation may have completed, so check its state and reuse its Idempotency-Key.
	Code      ApiErrorBodyCode  `json:"code"`
	DocUrl    *string           `json:"doc_url,omitempty"`
	Freshness *FreshnessFailure `json:"freshness,omitempty"`
	Message   string            `json:"message"`
	Param     *string           `json:"param,omitempty"`

	// Reason ADDITIVE (#7209). The specific, actionable cause behind `code`, when there is one more specific than the code itself. `code` keeps its published values, so existing clients are unaffected; new clients branch on `reason`. Omitted when the code already says everything we know. pick_not_released: no Pick of the Day is published for the current product day; schedule one request against retry_at instead of polling. unknown_endpoint: the PATH is not a route on this API -- read GET /api/v1, do not retry. trader_not_tracked: the wallet is real and the URL is right, but the trader is outside the HOT/WARM sync tiers -- stop asking for this wallet. cursor_expired: pagination went stale mid-walk -- re-request the first page and continue. read_model_warming: the requested endpoint cannot serve its read model yet; exact causes are endpoint-specific and can include a cold or contended refresh or a dependency that prevented refresh. database_unavailable: the API's database or its connection pool is temporarily unreachable (a connection-class failure, not a query fault); code stays rate_limit_unavailable, nothing is rate-limited, retry after Retry-After / retry_at. idempotency_in_progress: retain the exact Idempotency-Key and request body, then retry shortly. webhook_delivery_in_progress: retry the URL or signing-secret configuration change after the destination's active request completes. request_accounting_unavailable: accounting capacity is unavailable before the handler executes; retry after Retry-After / retry_at. sandbox_api_key: the credential is a sandbox key (oxi_sk_test_) from POST /api/v1/agents/register, which only the sandbox server accepts -- call the sandbox base URL with it, or get a live key or OAuth access token; do not retry it here. api_key_in_query: the key was sent as a ?token= query parameter, which no route reads because URLs land in logs and history; the key itself was not checked -- resend it as Authorization: Bearer. subscription_inactive: the key is valid but the account's Pro subscription has lapsed (402 subscription_required); permanent until a person reactivates at https://0xinsider.com/billing, which the message names -- stop retrying on a schedule and surface the link. The key owner is emailed once per lapse. monthly_quota_exceeded: the account has used the requests Pro includes for the UTC calendar month (429 rate_limited); retry_at and Retry-After name the first of next month, the only retry that can succeed, and the message names https://0xinsider.com/developers, where pay as you go for requests over the quota is turned on. The X-Monthly-Quota-Limit, X-Monthly-Quota-Remaining and X-Monthly-Quota-Reset headers on every authenticated response say how close the account is. invalid_query, invalid_path, invalid_body (400 bad_request, #16146): a query parameter, a path segment or the JSON body did not parse or does not fit the route's schema, so no handler ran; param names the field when the parser named one (a query key, a path segment, a JSON path such as traders[0], or body); fix the request, never retry it as sent. unsupported_media_type (415 bad_request, param content-type): send the body with Content-Type: application/json. payload_too_large (413 bad_request, param body): the body is over 1048576 bytes. method_not_allowed (405 bad_request): the path is a route but not with this method; the Allow header names the methods it serves. ip_rate_limited (429 rate_limited, #16380): the per-address budget every caller behind one IP shares, counted before authentication, is spent; not the key's own window, and the RateLimit-* headers describe that bucket. ip_throttled (429 rate_limited): the address is in a cooldown after sustained over-limit traffic; Retry-After is minutes to days, and a request before it does not shorten the cooldown.
	Reason *ApiErrorBodyReason `json:"reason,omitempty"`

	// RetryAt The recommended next retry instant (RFC3339). Present on every retryable error (reason=pick_not_released, code=rate_limited including reason=monthly_quota_exceeded, code=rate_limit_unavailable, reason=read_model_warming) and omitted otherwise. Always in the future. For pick_not_released: before the 11:00 UTC operating-window start, before a selected pick's stored release, or after a skipped day, it names the automatic system's next boundary. While no candidate exists in the live window it normally names the persisted next automatic selector attempt. Every value is advisory and can change before release. When the automatic schedule is absent/due or a pick is overdue it degrades to ~60s. Schedule one request and do not poll. Prefer Retry-After for the duration because it is immune to client clock skew.
	RetryAt *time.Time `json:"retry_at,omitempty"`
}

ApiErrorBody defines model for ApiErrorBody.

type ApiErrorBodyCode

type ApiErrorBodyCode string

ApiErrorBodyCode FROZEN: an existing value never changes meaning. request_timeout (408, #16146) was added the way insufficient_scope was: the handler did not answer inside the server's 30-second timeout. Retry-After and retry_at ride on it only for a safe method (GET, HEAD); a timed-out mutation may have completed, so check its state and reuse its Idempotency-Key.

const (
	ApiErrorBodyCodeAccountLocked        ApiErrorBodyCode = "account_locked"
	ApiErrorBodyCodeBadRequest           ApiErrorBodyCode = "bad_request"
	ApiErrorBodyCodeForbidden            ApiErrorBodyCode = "forbidden"
	ApiErrorBodyCodeInsufficientScope    ApiErrorBodyCode = "insufficient_scope"
	ApiErrorBodyCodeInternalError        ApiErrorBodyCode = "internal_error"
	ApiErrorBodyCodeInvalidApiKey        ApiErrorBodyCode = "invalid_api_key"
	ApiErrorBodyCodeNotFound             ApiErrorBodyCode = "not_found"
	ApiErrorBodyCodeRateLimitUnavailable ApiErrorBodyCode = "rate_limit_unavailable"
	ApiErrorBodyCodeRateLimited          ApiErrorBodyCode = "rate_limited"
	ApiErrorBodyCodeRequestTimeout       ApiErrorBodyCode = "request_timeout"
	ApiErrorBodyCodeSubscriptionRequired ApiErrorBodyCode = "subscription_required"
)

Defines values for ApiErrorBodyCode.

func (ApiErrorBodyCode) Valid

func (e ApiErrorBodyCode) Valid() bool

Valid indicates whether the value is a known member of the ApiErrorBodyCode enum.

type ApiErrorBodyReason

type ApiErrorBodyReason string

ApiErrorBodyReason ADDITIVE (#7209). The specific, actionable cause behind `code`, when there is one more specific than the code itself. `code` keeps its published values, so existing clients are unaffected; new clients branch on `reason`. Omitted when the code already says everything we know. pick_not_released: no Pick of the Day is published for the current product day; schedule one request against retry_at instead of polling. unknown_endpoint: the PATH is not a route on this API -- read GET /api/v1, do not retry. trader_not_tracked: the wallet is real and the URL is right, but the trader is outside the HOT/WARM sync tiers -- stop asking for this wallet. cursor_expired: pagination went stale mid-walk -- re-request the first page and continue. read_model_warming: the requested endpoint cannot serve its read model yet; exact causes are endpoint-specific and can include a cold or contended refresh or a dependency that prevented refresh. database_unavailable: the API's database or its connection pool is temporarily unreachable (a connection-class failure, not a query fault); code stays rate_limit_unavailable, nothing is rate-limited, retry after Retry-After / retry_at. idempotency_in_progress: retain the exact Idempotency-Key and request body, then retry shortly. webhook_delivery_in_progress: retry the URL or signing-secret configuration change after the destination's active request completes. request_accounting_unavailable: accounting capacity is unavailable before the handler executes; retry after Retry-After / retry_at. sandbox_api_key: the credential is a sandbox key (oxi_sk_test_) from POST /api/v1/agents/register, which only the sandbox server accepts -- call the sandbox base URL with it, or get a live key or OAuth access token; do not retry it here. api_key_in_query: the key was sent as a ?token= query parameter, which no route reads because URLs land in logs and history; the key itself was not checked -- resend it as Authorization: Bearer. subscription_inactive: the key is valid but the account's Pro subscription has lapsed (402 subscription_required); permanent until a person reactivates at https://0xinsider.com/billing, which the message names -- stop retrying on a schedule and surface the link. The key owner is emailed once per lapse. monthly_quota_exceeded: the account has used the requests Pro includes for the UTC calendar month (429 rate_limited); retry_at and Retry-After name the first of next month, the only retry that can succeed, and the message names https://0xinsider.com/developers, where pay as you go for requests over the quota is turned on. The X-Monthly-Quota-Limit, X-Monthly-Quota-Remaining and X-Monthly-Quota-Reset headers on every authenticated response say how close the account is. invalid_query, invalid_path, invalid_body (400 bad_request, #16146): a query parameter, a path segment or the JSON body did not parse or does not fit the route's schema, so no handler ran; param names the field when the parser named one (a query key, a path segment, a JSON path such as traders[0], or body); fix the request, never retry it as sent. unsupported_media_type (415 bad_request, param content-type): send the body with Content-Type: application/json. payload_too_large (413 bad_request, param body): the body is over 1048576 bytes. method_not_allowed (405 bad_request): the path is a route but not with this method; the Allow header names the methods it serves. ip_rate_limited (429 rate_limited, #16380): the per-address budget every caller behind one IP shares, counted before authentication, is spent; not the key's own window, and the RateLimit-* headers describe that bucket. ip_throttled (429 rate_limited): the address is in a cooldown after sustained over-limit traffic; Retry-After is minutes to days, and a request before it does not shorten the cooldown.

const (
	ApiErrorBodyReasonApiKeyInQuery                      ApiErrorBodyReason = "api_key_in_query"
	ApiErrorBodyReasonCursorExpired                      ApiErrorBodyReason = "cursor_expired"
	ApiErrorBodyReasonDatabaseUnavailable                ApiErrorBodyReason = "database_unavailable"
	ApiErrorBodyReasonExportExpired                      ApiErrorBodyReason = "export_expired"
	ApiErrorBodyReasonFreshnessCeilingUnsatisfied        ApiErrorBodyReason = "freshness_ceiling_unsatisfied"
	ApiErrorBodyReasonIdempotencyInProgress              ApiErrorBodyReason = "idempotency_in_progress"
	ApiErrorBodyReasonInvalidBody                        ApiErrorBodyReason = "invalid_body"
	ApiErrorBodyReasonInvalidPath                        ApiErrorBodyReason = "invalid_path"
	ApiErrorBodyReasonInvalidQuery                       ApiErrorBodyReason = "invalid_query"
	ApiErrorBodyReasonIpRateLimited                      ApiErrorBodyReason = "ip_rate_limited"
	ApiErrorBodyReasonIpThrottled                        ApiErrorBodyReason = "ip_throttled"
	ApiErrorBodyReasonMethodNotAllowed                   ApiErrorBodyReason = "method_not_allowed"
	ApiErrorBodyReasonMonthlyQuotaExceeded               ApiErrorBodyReason = "monthly_quota_exceeded"
	ApiErrorBodyReasonPayloadTooLarge                    ApiErrorBodyReason = "payload_too_large"
	ApiErrorBodyReasonPickNotReleased                    ApiErrorBodyReason = "pick_not_released"
	ApiErrorBodyReasonReadModelWarming                   ApiErrorBodyReason = "read_model_warming"
	ApiErrorBodyReasonRequestAccountingUnavailable       ApiErrorBodyReason = "request_accounting_unavailable"
	ApiErrorBodyReasonSandboxApiKey                      ApiErrorBodyReason = "sandbox_api_key"
	ApiErrorBodyReasonSubscriptionInactive               ApiErrorBodyReason = "subscription_inactive"
	ApiErrorBodyReasonTraderNotTracked                   ApiErrorBodyReason = "trader_not_tracked"
	ApiErrorBodyReasonUnknownEndpoint                    ApiErrorBodyReason = "unknown_endpoint"
	ApiErrorBodyReasonUnknownQueryParameter              ApiErrorBodyReason = "unknown_query_parameter"
	ApiErrorBodyReasonUnsupportedMediaType               ApiErrorBodyReason = "unsupported_media_type"
	ApiErrorBodyReasonWebhookDeliveryInProgress          ApiErrorBodyReason = "webhook_delivery_in_progress"
	ApiErrorBodyReasonWebhookSecretRotationNotPrepared   ApiErrorBodyReason = "webhook_secret_rotation_not_prepared"
	ApiErrorBodyReasonWebhookSecretRotationOverlapActive ApiErrorBodyReason = "webhook_secret_rotation_overlap_active"
)

Defines values for ApiErrorBodyReason.

func (ApiErrorBodyReason) Valid

func (e ApiErrorBodyReason) Valid() bool

Valid indicates whether the value is a known member of the ApiErrorBodyReason enum.

type ApiErrorErrorCode

type ApiErrorErrorCode string

ApiErrorErrorCode FROZEN: an existing value never changes meaning. request_timeout (408, #16146) was added the way insufficient_scope was: the handler did not answer inside the server's 30-second timeout. Retry-After and retry_at ride on it only for a safe method (GET, HEAD); a timed-out mutation may have completed, so check its state and reuse its Idempotency-Key.

const (
	ApiErrorErrorCodeAccountLocked        ApiErrorErrorCode = "account_locked"
	ApiErrorErrorCodeBadRequest           ApiErrorErrorCode = "bad_request"
	ApiErrorErrorCodeForbidden            ApiErrorErrorCode = "forbidden"
	ApiErrorErrorCodeInsufficientScope    ApiErrorErrorCode = "insufficient_scope"
	ApiErrorErrorCodeInternalError        ApiErrorErrorCode = "internal_error"
	ApiErrorErrorCodeInvalidApiKey        ApiErrorErrorCode = "invalid_api_key"
	ApiErrorErrorCodeNotFound             ApiErrorErrorCode = "not_found"
	ApiErrorErrorCodeRateLimitUnavailable ApiErrorErrorCode = "rate_limit_unavailable"
	ApiErrorErrorCodeRateLimited          ApiErrorErrorCode = "rate_limited"
	ApiErrorErrorCodeRequestTimeout       ApiErrorErrorCode = "request_timeout"
	ApiErrorErrorCodeSubscriptionRequired ApiErrorErrorCode = "subscription_required"
)

Defines values for ApiErrorErrorCode.

func (ApiErrorErrorCode) Valid

func (e ApiErrorErrorCode) Valid() bool

Valid indicates whether the value is a known member of the ApiErrorErrorCode enum.

type ApiErrorErrorReason

type ApiErrorErrorReason string

ApiErrorErrorReason ADDITIVE (#7209). The specific, actionable cause behind `code`, when there is one more specific than the code itself. `code` keeps its published values, so existing clients are unaffected; new clients branch on `reason`. Omitted when the code already says everything we know. pick_not_released: no Pick of the Day is published for the current product day; schedule one request against retry_at instead of polling. unknown_endpoint: the PATH is not a route on this API -- read GET /api/v1, do not retry. trader_not_tracked: the wallet is real and the URL is right, but the trader is outside the HOT/WARM sync tiers -- stop asking for this wallet. cursor_expired: pagination went stale mid-walk -- re-request the first page and continue. read_model_warming: the requested endpoint cannot serve its read model yet; exact causes are endpoint-specific and can include a cold or contended refresh or a dependency that prevented refresh. database_unavailable: the API's database or its connection pool is temporarily unreachable (a connection-class failure, not a query fault); code stays rate_limit_unavailable, nothing is rate-limited, retry after Retry-After / retry_at. idempotency_in_progress: retain the exact Idempotency-Key and request body, then retry shortly. webhook_delivery_in_progress: retry the URL or signing-secret configuration change after the destination's active request completes. request_accounting_unavailable: accounting capacity is unavailable before the handler executes; retry after Retry-After / retry_at. sandbox_api_key: the credential is a sandbox key (oxi_sk_test_) from POST /api/v1/agents/register, which only the sandbox server accepts -- call the sandbox base URL with it, or get a live key or OAuth access token; do not retry it here. api_key_in_query: the key was sent as a ?token= query parameter, which no route reads because URLs land in logs and history; the key itself was not checked -- resend it as Authorization: Bearer. subscription_inactive: the key is valid but the account's Pro subscription has lapsed (402 subscription_required); permanent until a person reactivates at https://0xinsider.com/billing, which the message names -- stop retrying on a schedule and surface the link. The key owner is emailed once per lapse. monthly_quota_exceeded: the account has used the requests Pro includes for the UTC calendar month (429 rate_limited); retry_at and Retry-After name the first of next month, the only retry that can succeed, and the message names https://0xinsider.com/developers, where pay as you go for requests over the quota is turned on. The X-Monthly-Quota-Limit, X-Monthly-Quota-Remaining and X-Monthly-Quota-Reset headers on every authenticated response say how close the account is. invalid_query, invalid_path, invalid_body (400 bad_request, #16146): a query parameter, a path segment or the JSON body did not parse or does not fit the route's schema, so no handler ran; param names the field when the parser named one (a query key, a path segment, a JSON path such as traders[0], or body); fix the request, never retry it as sent. unsupported_media_type (415 bad_request, param content-type): send the body with Content-Type: application/json. payload_too_large (413 bad_request, param body): the body is over 1048576 bytes. method_not_allowed (405 bad_request): the path is a route but not with this method; the Allow header names the methods it serves. ip_rate_limited (429 rate_limited, #16380): the per-address budget every caller behind one IP shares, counted before authentication, is spent; not the key's own window, and the RateLimit-* headers describe that bucket. ip_throttled (429 rate_limited): the address is in a cooldown after sustained over-limit traffic; Retry-After is minutes to days, and a request before it does not shorten the cooldown.

const (
	ApiErrorErrorReasonApiKeyInQuery                      ApiErrorErrorReason = "api_key_in_query"
	ApiErrorErrorReasonCursorExpired                      ApiErrorErrorReason = "cursor_expired"
	ApiErrorErrorReasonDatabaseUnavailable                ApiErrorErrorReason = "database_unavailable"
	ApiErrorErrorReasonExportExpired                      ApiErrorErrorReason = "export_expired"
	ApiErrorErrorReasonFreshnessCeilingUnsatisfied        ApiErrorErrorReason = "freshness_ceiling_unsatisfied"
	ApiErrorErrorReasonIdempotencyInProgress              ApiErrorErrorReason = "idempotency_in_progress"
	ApiErrorErrorReasonInvalidBody                        ApiErrorErrorReason = "invalid_body"
	ApiErrorErrorReasonInvalidPath                        ApiErrorErrorReason = "invalid_path"
	ApiErrorErrorReasonInvalidQuery                       ApiErrorErrorReason = "invalid_query"
	ApiErrorErrorReasonIpRateLimited                      ApiErrorErrorReason = "ip_rate_limited"
	ApiErrorErrorReasonIpThrottled                        ApiErrorErrorReason = "ip_throttled"
	ApiErrorErrorReasonMethodNotAllowed                   ApiErrorErrorReason = "method_not_allowed"
	ApiErrorErrorReasonMonthlyQuotaExceeded               ApiErrorErrorReason = "monthly_quota_exceeded"
	ApiErrorErrorReasonPayloadTooLarge                    ApiErrorErrorReason = "payload_too_large"
	ApiErrorErrorReasonPickNotReleased                    ApiErrorErrorReason = "pick_not_released"
	ApiErrorErrorReasonReadModelWarming                   ApiErrorErrorReason = "read_model_warming"
	ApiErrorErrorReasonRequestAccountingUnavailable       ApiErrorErrorReason = "request_accounting_unavailable"
	ApiErrorErrorReasonSandboxApiKey                      ApiErrorErrorReason = "sandbox_api_key"
	ApiErrorErrorReasonSubscriptionInactive               ApiErrorErrorReason = "subscription_inactive"
	ApiErrorErrorReasonTraderNotTracked                   ApiErrorErrorReason = "trader_not_tracked"
	ApiErrorErrorReasonUnknownEndpoint                    ApiErrorErrorReason = "unknown_endpoint"
	ApiErrorErrorReasonUnknownQueryParameter              ApiErrorErrorReason = "unknown_query_parameter"
	ApiErrorErrorReasonUnsupportedMediaType               ApiErrorErrorReason = "unsupported_media_type"
	ApiErrorErrorReasonWebhookDeliveryInProgress          ApiErrorErrorReason = "webhook_delivery_in_progress"
	ApiErrorErrorReasonWebhookSecretRotationNotPrepared   ApiErrorErrorReason = "webhook_secret_rotation_not_prepared"
	ApiErrorErrorReasonWebhookSecretRotationOverlapActive ApiErrorErrorReason = "webhook_secret_rotation_overlap_active"
)

Defines values for ApiErrorErrorReason.

func (ApiErrorErrorReason) Valid

func (e ApiErrorErrorReason) Valid() bool

Valid indicates whether the value is a known member of the ApiErrorErrorReason enum.

type ApiErrorObject

type ApiErrorObject string

ApiErrorObject defines model for ApiError.Object.

const (
	ApiErrorObjectError ApiErrorObject = "error"
)

Defines values for ApiErrorObject.

func (ApiErrorObject) Valid

func (e ApiErrorObject) Valid() bool

Valid indicates whether the value is a known member of the ApiErrorObject enum.

type BatchGetMarketFlow200JSONResponseBodyObject added in v0.4.0

type BatchGetMarketFlow200JSONResponseBodyObject string

BatchGetMarketFlow200JSONResponseBodyObject defines parameters for BatchGetMarketFlow.

const (
	MarketFlowBatch BatchGetMarketFlow200JSONResponseBodyObject = "market_flow_batch"
)

Defines values for BatchGetMarketFlow200JSONResponseBodyObject.

func (BatchGetMarketFlow200JSONResponseBodyObject) Valid added in v0.4.0

Valid indicates whether the value is a known member of the BatchGetMarketFlow200JSONResponseBodyObject enum.

type BatchGetMarketFlowJSONBody added in v0.4.0

type BatchGetMarketFlowJSONBody struct {
	// ConditionIds Market condition IDs to resolve in input order.
	ConditionIds []string `json:"condition_ids"`

	// Timeframe Lookback window used for flow and trade-count context.
	Timeframe *BatchGetMarketFlowJSONBodyTimeframe `json:"timeframe,omitempty"`
}

BatchGetMarketFlowJSONBody defines parameters for BatchGetMarketFlow.

type BatchGetMarketFlowJSONBodyTimeframe added in v0.4.0

type BatchGetMarketFlowJSONBodyTimeframe string

BatchGetMarketFlowJSONBodyTimeframe defines parameters for BatchGetMarketFlow.

const (
	BatchGetMarketFlowJSONBodyTimeframeN1h  BatchGetMarketFlowJSONBodyTimeframe = "1h"
	BatchGetMarketFlowJSONBodyTimeframeN24h BatchGetMarketFlowJSONBodyTimeframe = "24h"
	BatchGetMarketFlowJSONBodyTimeframeN4h  BatchGetMarketFlowJSONBodyTimeframe = "4h"
	BatchGetMarketFlowJSONBodyTimeframeN7d  BatchGetMarketFlowJSONBodyTimeframe = "7d"
)

Defines values for BatchGetMarketFlowJSONBodyTimeframe.

func (BatchGetMarketFlowJSONBodyTimeframe) Valid added in v0.4.0

Valid indicates whether the value is a known member of the BatchGetMarketFlowJSONBodyTimeframe enum.

type BatchGetMarketFlowJSONRequestBody added in v0.4.0

type BatchGetMarketFlowJSONRequestBody BatchGetMarketFlowJSONBody

BatchGetMarketFlowJSONRequestBody defines body for BatchGetMarketFlow for application/json ContentType.

type BatchGetMarketFlowParams added in v0.4.0

type BatchGetMarketFlowParams struct {
	// XQueryValidation Opt into strict query-name validation. The default is compatible: unknown names are ignored and reported in X-Query-Ignored. With strict, an unknown name returns 400 bad_request with error.reason unknown_query_parameter before the handler runs, including when its percent escape is incomplete.
	XQueryValidation *BatchGetMarketFlowParamsXQueryValidation `json:"X-Query-Validation,omitempty"`
}

BatchGetMarketFlowParams defines parameters for BatchGetMarketFlow.

type BatchGetMarketFlowParamsXQueryValidation added in v0.4.0

type BatchGetMarketFlowParamsXQueryValidation string

BatchGetMarketFlowParamsXQueryValidation defines parameters for BatchGetMarketFlow.

const (
	BatchGetMarketFlowParamsXQueryValidationStrict BatchGetMarketFlowParamsXQueryValidation = "strict"
)

Defines values for BatchGetMarketFlowParamsXQueryValidation.

func (BatchGetMarketFlowParamsXQueryValidation) Valid added in v0.4.0

Valid indicates whether the value is a known member of the BatchGetMarketFlowParamsXQueryValidation enum.

type BatchGetMarketFlowResponse added in v0.4.0

type BatchGetMarketFlowResponse struct {
	Body         []byte
	HTTPResponse *http.Response
	// JSON200 the response for an HTTP 200 `application/json` response
	JSON200 *struct {
		Data   []BatchMarketFlowItem                       `json:"data"`
		Meta   BatchResponseMeta                           `json:"meta"`
		Object BatchGetMarketFlow200JSONResponseBodyObject `json:"object"`
	}
	// JSON400 the response for an HTTP 400 `application/json` response
	JSON400 *ApiError
	// JSON401 the response for an HTTP 401 `application/json` response
	JSON401 *ApiError
	// JSON402 the response for an HTTP 402 `application/json` response
	JSON402 *ApiError
	// JSON403 the response for an HTTP 403 `application/json` response
	JSON403 *ApiError
	// JSON408 the response for an HTTP 408 `application/json` response
	JSON408 *ApiError
	// JSON413 the response for an HTTP 413 `application/json` response
	JSON413 *ApiError
	// JSON415 the response for an HTTP 415 `application/json` response
	JSON415 *ApiError
	// JSON423 the response for an HTTP 423 `application/json` response
	JSON423 *ApiError
	// JSON429 the response for an HTTP 429 `application/json` response
	JSON429 *ApiError
	// JSON500 the response for an HTTP 500 `application/json` response
	JSON500 *ApiError
	// JSON503 the response for an HTTP 503 `application/json` response
	JSON503 *ApiError
	// Headers200 the parsed response headers for an HTTP 200 response
	Headers200 *BatchGetMarketFlowResponse200Headers
	// Headers429 the parsed response headers for an HTTP 429 response
	Headers429 *BatchGetMarketFlowResponse429Headers
	// Headers503 the parsed response headers for an HTTP 503 response
	Headers503 *BatchGetMarketFlowResponse503Headers
}

func ParseBatchGetMarketFlowResponse added in v0.4.0

func ParseBatchGetMarketFlowResponse(rsp *http.Response) (*BatchGetMarketFlowResponse, error)

ParseBatchGetMarketFlowResponse parses an HTTP response from a BatchGetMarketFlowWithResponse call

func (BatchGetMarketFlowResponse) ContentType added in v0.4.0

func (r BatchGetMarketFlowResponse) ContentType() string

ContentType is a convenience method to retrieve the Content-Type value from the HTTP response headers

func (BatchGetMarketFlowResponse) GetBody added in v0.4.0

func (r BatchGetMarketFlowResponse) GetBody() []byte

GetBody returns the raw response body bytes

func (BatchGetMarketFlowResponse) GetJSON200 added in v0.4.0

func (r BatchGetMarketFlowResponse) GetJSON200() *struct {
	Data   []BatchMarketFlowItem                       `json:"data"`
	Meta   BatchResponseMeta                           `json:"meta"`
	Object BatchGetMarketFlow200JSONResponseBodyObject `json:"object"`
}

GetJSON200 returns the response for an HTTP 200 `application/json` response

func (BatchGetMarketFlowResponse) GetJSON400 added in v0.4.0

func (r BatchGetMarketFlowResponse) GetJSON400() *ApiError

GetJSON400 returns the response for an HTTP 400 `application/json` response

func (BatchGetMarketFlowResponse) GetJSON401 added in v0.4.0

func (r BatchGetMarketFlowResponse) GetJSON401() *ApiError

GetJSON401 returns the response for an HTTP 401 `application/json` response

func (BatchGetMarketFlowResponse) GetJSON402 added in v0.4.0

func (r BatchGetMarketFlowResponse) GetJSON402() *ApiError

GetJSON402 returns the response for an HTTP 402 `application/json` response

func (BatchGetMarketFlowResponse) GetJSON403 added in v0.4.0

func (r BatchGetMarketFlowResponse) GetJSON403() *ApiError

GetJSON403 returns the response for an HTTP 403 `application/json` response

func (BatchGetMarketFlowResponse) GetJSON408 added in v0.4.0

func (r BatchGetMarketFlowResponse) GetJSON408() *ApiError

GetJSON408 returns the response for an HTTP 408 `application/json` response

func (BatchGetMarketFlowResponse) GetJSON413 added in v0.4.0

func (r BatchGetMarketFlowResponse) GetJSON413() *ApiError

GetJSON413 returns the response for an HTTP 413 `application/json` response

func (BatchGetMarketFlowResponse) GetJSON415 added in v0.4.0

func (r BatchGetMarketFlowResponse) GetJSON415() *ApiError

GetJSON415 returns the response for an HTTP 415 `application/json` response

func (BatchGetMarketFlowResponse) GetJSON423 added in v0.4.0

func (r BatchGetMarketFlowResponse) GetJSON423() *ApiError

GetJSON423 returns the response for an HTTP 423 `application/json` response

func (BatchGetMarketFlowResponse) GetJSON429 added in v0.4.0

func (r BatchGetMarketFlowResponse) GetJSON429() *ApiError

GetJSON429 returns the response for an HTTP 429 `application/json` response

func (BatchGetMarketFlowResponse) GetJSON500 added in v0.4.0

func (r BatchGetMarketFlowResponse) GetJSON500() *ApiError

GetJSON500 returns the response for an HTTP 500 `application/json` response

func (BatchGetMarketFlowResponse) GetJSON503 added in v0.4.0

func (r BatchGetMarketFlowResponse) GetJSON503() *ApiError

GetJSON503 returns the response for an HTTP 503 `application/json` response

func (BatchGetMarketFlowResponse) Status added in v0.4.0

Status returns HTTPResponse.Status

func (BatchGetMarketFlowResponse) StatusCode added in v0.4.0

func (r BatchGetMarketFlowResponse) StatusCode() int

StatusCode returns HTTPResponse.StatusCode

type BatchGetMarketFlowResponse200Headers added in v0.4.0

type BatchGetMarketFlowResponse200Headers struct {
	RateLimitLimit           *int
	RateLimitRemaining       *int
	RateLimitReset           *int
	ServerTiming             *string
	XBatchRateLimitLimit     *int
	XBatchRateLimitRemaining *int
	XBatchRateLimitReset     *int
	XEffectiveQuery          *string
	XQueryIgnored            *string
	XRateLimitLimit          *int
	XRateLimitRemaining      *int
	XRateLimitReset          *int
	XRequestCost             *int
	XRequestId               *string
	XUsageAccounting         *string
}

BatchGetMarketFlowResponse200Headers the declared response headers of an HTTP 200 response for BatchGetMarketFlow

type BatchGetMarketFlowResponse429Headers added in v0.4.0

type BatchGetMarketFlowResponse429Headers struct {
	RateLimitLimit      *int
	RateLimitRemaining  *int
	RateLimitReset      *int
	RetryAfter          *int
	XRateLimitLimit     *int
	XRateLimitRemaining *int
	XRateLimitReset     *int
	XRequestId          *string
}

BatchGetMarketFlowResponse429Headers the declared response headers of an HTTP 429 response for BatchGetMarketFlow

type BatchGetMarketFlowResponse503Headers added in v0.4.0

type BatchGetMarketFlowResponse503Headers struct {
	RetryAfter *int
	XRequestId *string
}

BatchGetMarketFlowResponse503Headers the declared response headers of an HTTP 503 response for BatchGetMarketFlow

type BatchGetMarketIntel200JSONResponseBodyObject

type BatchGetMarketIntel200JSONResponseBodyObject string

BatchGetMarketIntel200JSONResponseBodyObject defines parameters for BatchGetMarketIntel.

const (
	MarketIntelBatch BatchGetMarketIntel200JSONResponseBodyObject = "market_intel_batch"
)

Defines values for BatchGetMarketIntel200JSONResponseBodyObject.

func (BatchGetMarketIntel200JSONResponseBodyObject) Valid

Valid indicates whether the value is a known member of the BatchGetMarketIntel200JSONResponseBodyObject enum.

type BatchGetMarketIntelJSONBody

type BatchGetMarketIntelJSONBody struct {
	// ConditionIds Market condition IDs to resolve in input order.
	ConditionIds []string `json:"condition_ids"`

	// Timeframe Lookback window used for flow and trade-count context.
	Timeframe *BatchGetMarketIntelJSONBodyTimeframe `json:"timeframe,omitempty"`
}

BatchGetMarketIntelJSONBody defines parameters for BatchGetMarketIntel.

type BatchGetMarketIntelJSONBodyTimeframe

type BatchGetMarketIntelJSONBodyTimeframe string

BatchGetMarketIntelJSONBodyTimeframe defines parameters for BatchGetMarketIntel.

const (
	BatchGetMarketIntelJSONBodyTimeframeN1h  BatchGetMarketIntelJSONBodyTimeframe = "1h"
	BatchGetMarketIntelJSONBodyTimeframeN24h BatchGetMarketIntelJSONBodyTimeframe = "24h"
	BatchGetMarketIntelJSONBodyTimeframeN4h  BatchGetMarketIntelJSONBodyTimeframe = "4h"
	BatchGetMarketIntelJSONBodyTimeframeN7d  BatchGetMarketIntelJSONBodyTimeframe = "7d"
)

Defines values for BatchGetMarketIntelJSONBodyTimeframe.

func (BatchGetMarketIntelJSONBodyTimeframe) Valid

Valid indicates whether the value is a known member of the BatchGetMarketIntelJSONBodyTimeframe enum.

type BatchGetMarketIntelJSONRequestBody deprecated

type BatchGetMarketIntelJSONRequestBody BatchGetMarketIntelJSONBody

BatchGetMarketIntelJSONRequestBody defines body for BatchGetMarketIntel for application/json ContentType.

Deprecated: this type has been marked as deprecated upstream, but no `x-deprecated-reason` was set

type BatchGetMarketIntelParams added in v0.3.0

type BatchGetMarketIntelParams struct {
	// XQueryValidation Opt into strict query-name validation. The default is compatible: unknown names are ignored and reported in X-Query-Ignored. With strict, an unknown name returns 400 bad_request with error.reason unknown_query_parameter before the handler runs, including when its percent escape is incomplete.
	XQueryValidation *BatchGetMarketIntelParamsXQueryValidation `json:"X-Query-Validation,omitempty"`
}

BatchGetMarketIntelParams defines parameters for BatchGetMarketIntel.

type BatchGetMarketIntelParamsXQueryValidation added in v0.3.0

type BatchGetMarketIntelParamsXQueryValidation string

BatchGetMarketIntelParamsXQueryValidation defines parameters for BatchGetMarketIntel.

const (
	BatchGetMarketIntelParamsXQueryValidationStrict BatchGetMarketIntelParamsXQueryValidation = "strict"
)

Defines values for BatchGetMarketIntelParamsXQueryValidation.

func (BatchGetMarketIntelParamsXQueryValidation) Valid added in v0.3.0

Valid indicates whether the value is a known member of the BatchGetMarketIntelParamsXQueryValidation enum.

type BatchGetMarketIntelResponse

type BatchGetMarketIntelResponse struct {
	Body         []byte
	HTTPResponse *http.Response
	// JSON200 the response for an HTTP 200 `application/json` response
	JSON200 *struct {
		Data   []BatchMarketFlowItem                        `json:"data"`
		Meta   BatchResponseMeta                            `json:"meta"`
		Object BatchGetMarketIntel200JSONResponseBodyObject `json:"object"`
	}
	// JSON400 the response for an HTTP 400 `application/json` response
	JSON400 *ApiError
	// JSON401 the response for an HTTP 401 `application/json` response
	JSON401 *ApiError
	// JSON402 the response for an HTTP 402 `application/json` response
	JSON402 *ApiError
	// JSON403 the response for an HTTP 403 `application/json` response
	JSON403 *ApiError
	// JSON408 the response for an HTTP 408 `application/json` response
	JSON408 *ApiError
	// JSON413 the response for an HTTP 413 `application/json` response
	JSON413 *ApiError
	// JSON415 the response for an HTTP 415 `application/json` response
	JSON415 *ApiError
	// JSON423 the response for an HTTP 423 `application/json` response
	JSON423 *ApiError
	// JSON429 the response for an HTTP 429 `application/json` response
	JSON429 *ApiError
	// JSON500 the response for an HTTP 500 `application/json` response
	JSON500 *ApiError
	// JSON503 the response for an HTTP 503 `application/json` response
	JSON503 *ApiError
	// Headers200 the parsed response headers for an HTTP 200 response
	Headers200 *BatchGetMarketIntelResponse200Headers
	// Headers429 the parsed response headers for an HTTP 429 response
	Headers429 *BatchGetMarketIntelResponse429Headers
	// Headers503 the parsed response headers for an HTTP 503 response
	Headers503 *BatchGetMarketIntelResponse503Headers
}

func ParseBatchGetMarketIntelResponse

func ParseBatchGetMarketIntelResponse(rsp *http.Response) (*BatchGetMarketIntelResponse, error)

ParseBatchGetMarketIntelResponse parses an HTTP response from a BatchGetMarketIntelWithResponse call

func (BatchGetMarketIntelResponse) ContentType

func (r BatchGetMarketIntelResponse) ContentType() string

ContentType is a convenience method to retrieve the Content-Type value from the HTTP response headers

func (BatchGetMarketIntelResponse) GetBody

func (r BatchGetMarketIntelResponse) GetBody() []byte

GetBody returns the raw response body bytes

func (BatchGetMarketIntelResponse) GetJSON200

func (r BatchGetMarketIntelResponse) GetJSON200() *struct {
	Data   []BatchMarketFlowItem                        `json:"data"`
	Meta   BatchResponseMeta                            `json:"meta"`
	Object BatchGetMarketIntel200JSONResponseBodyObject `json:"object"`
}

GetJSON200 returns the response for an HTTP 200 `application/json` response

func (BatchGetMarketIntelResponse) GetJSON400

func (r BatchGetMarketIntelResponse) GetJSON400() *ApiError

GetJSON400 returns the response for an HTTP 400 `application/json` response

func (BatchGetMarketIntelResponse) GetJSON401

func (r BatchGetMarketIntelResponse) GetJSON401() *ApiError

GetJSON401 returns the response for an HTTP 401 `application/json` response

func (BatchGetMarketIntelResponse) GetJSON402

func (r BatchGetMarketIntelResponse) GetJSON402() *ApiError

GetJSON402 returns the response for an HTTP 402 `application/json` response

func (BatchGetMarketIntelResponse) GetJSON403

func (r BatchGetMarketIntelResponse) GetJSON403() *ApiError

GetJSON403 returns the response for an HTTP 403 `application/json` response

func (BatchGetMarketIntelResponse) GetJSON408 added in v0.2.0

func (r BatchGetMarketIntelResponse) GetJSON408() *ApiError

GetJSON408 returns the response for an HTTP 408 `application/json` response

func (BatchGetMarketIntelResponse) GetJSON413 added in v0.2.0

func (r BatchGetMarketIntelResponse) GetJSON413() *ApiError

GetJSON413 returns the response for an HTTP 413 `application/json` response

func (BatchGetMarketIntelResponse) GetJSON415 added in v0.2.0

func (r BatchGetMarketIntelResponse) GetJSON415() *ApiError

GetJSON415 returns the response for an HTTP 415 `application/json` response

func (BatchGetMarketIntelResponse) GetJSON423

func (r BatchGetMarketIntelResponse) GetJSON423() *ApiError

GetJSON423 returns the response for an HTTP 423 `application/json` response

func (BatchGetMarketIntelResponse) GetJSON429

func (r BatchGetMarketIntelResponse) GetJSON429() *ApiError

GetJSON429 returns the response for an HTTP 429 `application/json` response

func (BatchGetMarketIntelResponse) GetJSON500

func (r BatchGetMarketIntelResponse) GetJSON500() *ApiError

GetJSON500 returns the response for an HTTP 500 `application/json` response

func (BatchGetMarketIntelResponse) GetJSON503

func (r BatchGetMarketIntelResponse) GetJSON503() *ApiError

GetJSON503 returns the response for an HTTP 503 `application/json` response

func (BatchGetMarketIntelResponse) Status

Status returns HTTPResponse.Status

func (BatchGetMarketIntelResponse) StatusCode

func (r BatchGetMarketIntelResponse) StatusCode() int

StatusCode returns HTTPResponse.StatusCode

type BatchGetMarketIntelResponse200Headers

type BatchGetMarketIntelResponse200Headers struct {
	RateLimitLimit           *int
	RateLimitRemaining       *int
	RateLimitReset           *int
	ServerTiming             *string
	XBatchRateLimitLimit     *int
	XBatchRateLimitRemaining *int
	XBatchRateLimitReset     *int
	XEffectiveQuery          *string
	XQueryIgnored            *string
	XRateLimitLimit          *int
	XRateLimitRemaining      *int
	XRateLimitReset          *int
	XRequestCost             *int
	XRequestId               *string
	XUsageAccounting         *string
}

BatchGetMarketIntelResponse200Headers the declared response headers of an HTTP 200 response for BatchGetMarketIntel

type BatchGetMarketIntelResponse429Headers

type BatchGetMarketIntelResponse429Headers struct {
	RateLimitLimit      *int
	RateLimitRemaining  *int
	RateLimitReset      *int
	RetryAfter          *int
	XRateLimitLimit     *int
	XRateLimitRemaining *int
	XRateLimitReset     *int
	XRequestId          *string
}

BatchGetMarketIntelResponse429Headers the declared response headers of an HTTP 429 response for BatchGetMarketIntel

type BatchGetMarketIntelResponse503Headers

type BatchGetMarketIntelResponse503Headers struct {
	RetryAfter *int
	XRequestId *string
}

BatchGetMarketIntelResponse503Headers the declared response headers of an HTTP 503 response for BatchGetMarketIntel

type BatchGetTraders200JSONResponseBodyObject

type BatchGetTraders200JSONResponseBodyObject string

BatchGetTraders200JSONResponseBodyObject defines parameters for BatchGetTraders.

const (
	TraderBatch BatchGetTraders200JSONResponseBodyObject = "trader_batch"
)

Defines values for BatchGetTraders200JSONResponseBodyObject.

func (BatchGetTraders200JSONResponseBodyObject) Valid

Valid indicates whether the value is a known member of the BatchGetTraders200JSONResponseBodyObject enum.

type BatchGetTradersJSONBody

type BatchGetTradersJSONBody struct {
	// Expand Shared expand flags applied to every trader item.
	Expand *[]BatchGetTradersJSONBodyExpand `json:"expand,omitempty"`

	// Traders Trader identities to resolve in input order.
	Traders []string `json:"traders"`
}

BatchGetTradersJSONBody defines parameters for BatchGetTraders.

type BatchGetTradersJSONBodyExpand

type BatchGetTradersJSONBodyExpand string

BatchGetTradersJSONBodyExpand defines parameters for BatchGetTraders.

const (
	BatchGetTradersJSONBodyExpandCategories   BatchGetTradersJSONBodyExpand = "categories"
	BatchGetTradersJSONBodyExpandQuantMetrics BatchGetTradersJSONBodyExpand = "quant_metrics"
	BatchGetTradersJSONBodyExpandStrategy     BatchGetTradersJSONBodyExpand = "strategy"
	BatchGetTradersJSONBodyExpandTrust        BatchGetTradersJSONBodyExpand = "trust"
)

Defines values for BatchGetTradersJSONBodyExpand.

func (BatchGetTradersJSONBodyExpand) Valid

Valid indicates whether the value is a known member of the BatchGetTradersJSONBodyExpand enum.

type BatchGetTradersJSONRequestBody

type BatchGetTradersJSONRequestBody BatchGetTradersJSONBody

BatchGetTradersJSONRequestBody defines body for BatchGetTraders for application/json ContentType.

type BatchGetTradersParams added in v0.3.0

type BatchGetTradersParams struct {
	// XQueryValidation Opt into strict query-name validation. The default is compatible: unknown names are ignored and reported in X-Query-Ignored. With strict, an unknown name returns 400 bad_request with error.reason unknown_query_parameter before the handler runs, including when its percent escape is incomplete.
	XQueryValidation *BatchGetTradersParamsXQueryValidation `json:"X-Query-Validation,omitempty"`
}

BatchGetTradersParams defines parameters for BatchGetTraders.

type BatchGetTradersParamsXQueryValidation added in v0.3.0

type BatchGetTradersParamsXQueryValidation string

BatchGetTradersParamsXQueryValidation defines parameters for BatchGetTraders.

const (
	BatchGetTradersParamsXQueryValidationStrict BatchGetTradersParamsXQueryValidation = "strict"
)

Defines values for BatchGetTradersParamsXQueryValidation.

func (BatchGetTradersParamsXQueryValidation) Valid added in v0.3.0

Valid indicates whether the value is a known member of the BatchGetTradersParamsXQueryValidation enum.

type BatchGetTradersResponse

type BatchGetTradersResponse struct {
	Body         []byte
	HTTPResponse *http.Response
	// JSON200 the response for an HTTP 200 `application/json` response
	JSON200 *struct {
		Data   []BatchTraderItem                        `json:"data"`
		Meta   BatchResponseMeta                        `json:"meta"`
		Object BatchGetTraders200JSONResponseBodyObject `json:"object"`
	}
	// JSON400 the response for an HTTP 400 `application/json` response
	JSON400 *ApiError
	// JSON401 the response for an HTTP 401 `application/json` response
	JSON401 *ApiError
	// JSON402 the response for an HTTP 402 `application/json` response
	JSON402 *ApiError
	// JSON403 the response for an HTTP 403 `application/json` response
	JSON403 *ApiError
	// JSON408 the response for an HTTP 408 `application/json` response
	JSON408 *ApiError
	// JSON413 the response for an HTTP 413 `application/json` response
	JSON413 *ApiError
	// JSON415 the response for an HTTP 415 `application/json` response
	JSON415 *ApiError
	// JSON423 the response for an HTTP 423 `application/json` response
	JSON423 *ApiError
	// JSON429 the response for an HTTP 429 `application/json` response
	JSON429 *ApiError
	// JSON500 the response for an HTTP 500 `application/json` response
	JSON500 *ApiError
	// JSON503 the response for an HTTP 503 `application/json` response
	JSON503 *ApiError
	// Headers200 the parsed response headers for an HTTP 200 response
	Headers200 *BatchGetTradersResponse200Headers
	// Headers429 the parsed response headers for an HTTP 429 response
	Headers429 *BatchGetTradersResponse429Headers
	// Headers503 the parsed response headers for an HTTP 503 response
	Headers503 *BatchGetTradersResponse503Headers
}

func ParseBatchGetTradersResponse

func ParseBatchGetTradersResponse(rsp *http.Response) (*BatchGetTradersResponse, error)

ParseBatchGetTradersResponse parses an HTTP response from a BatchGetTradersWithResponse call

func (BatchGetTradersResponse) ContentType

func (r BatchGetTradersResponse) ContentType() string

ContentType is a convenience method to retrieve the Content-Type value from the HTTP response headers

func (BatchGetTradersResponse) GetBody

func (r BatchGetTradersResponse) GetBody() []byte

GetBody returns the raw response body bytes

func (BatchGetTradersResponse) GetJSON200

func (r BatchGetTradersResponse) GetJSON200() *struct {
	Data   []BatchTraderItem                        `json:"data"`
	Meta   BatchResponseMeta                        `json:"meta"`
	Object BatchGetTraders200JSONResponseBodyObject `json:"object"`
}

GetJSON200 returns the response for an HTTP 200 `application/json` response

func (BatchGetTradersResponse) GetJSON400

func (r BatchGetTradersResponse) GetJSON400() *ApiError

GetJSON400 returns the response for an HTTP 400 `application/json` response

func (BatchGetTradersResponse) GetJSON401

func (r BatchGetTradersResponse) GetJSON401() *ApiError

GetJSON401 returns the response for an HTTP 401 `application/json` response

func (BatchGetTradersResponse) GetJSON402

func (r BatchGetTradersResponse) GetJSON402() *ApiError

GetJSON402 returns the response for an HTTP 402 `application/json` response

func (BatchGetTradersResponse) GetJSON403

func (r BatchGetTradersResponse) GetJSON403() *ApiError

GetJSON403 returns the response for an HTTP 403 `application/json` response

func (BatchGetTradersResponse) GetJSON408 added in v0.2.0

func (r BatchGetTradersResponse) GetJSON408() *ApiError

GetJSON408 returns the response for an HTTP 408 `application/json` response

func (BatchGetTradersResponse) GetJSON413 added in v0.2.0

func (r BatchGetTradersResponse) GetJSON413() *ApiError

GetJSON413 returns the response for an HTTP 413 `application/json` response

func (BatchGetTradersResponse) GetJSON415 added in v0.2.0

func (r BatchGetTradersResponse) GetJSON415() *ApiError

GetJSON415 returns the response for an HTTP 415 `application/json` response

func (BatchGetTradersResponse) GetJSON423

func (r BatchGetTradersResponse) GetJSON423() *ApiError

GetJSON423 returns the response for an HTTP 423 `application/json` response

func (BatchGetTradersResponse) GetJSON429

func (r BatchGetTradersResponse) GetJSON429() *ApiError

GetJSON429 returns the response for an HTTP 429 `application/json` response

func (BatchGetTradersResponse) GetJSON500

func (r BatchGetTradersResponse) GetJSON500() *ApiError

GetJSON500 returns the response for an HTTP 500 `application/json` response

func (BatchGetTradersResponse) GetJSON503

func (r BatchGetTradersResponse) GetJSON503() *ApiError

GetJSON503 returns the response for an HTTP 503 `application/json` response

func (BatchGetTradersResponse) Status

func (r BatchGetTradersResponse) Status() string

Status returns HTTPResponse.Status

func (BatchGetTradersResponse) StatusCode

func (r BatchGetTradersResponse) StatusCode() int

StatusCode returns HTTPResponse.StatusCode

type BatchGetTradersResponse200Headers

type BatchGetTradersResponse200Headers struct {
	RateLimitLimit           *int
	RateLimitRemaining       *int
	RateLimitReset           *int
	ServerTiming             *string
	XBatchRateLimitLimit     *int
	XBatchRateLimitRemaining *int
	XBatchRateLimitReset     *int
	XEffectiveQuery          *string
	XQueryIgnored            *string
	XRateLimitLimit          *int
	XRateLimitRemaining      *int
	XRateLimitReset          *int
	XRequestCost             *int
	XRequestId               *string
	XUsageAccounting         *string
}

BatchGetTradersResponse200Headers the declared response headers of an HTTP 200 response for BatchGetTraders

type BatchGetTradersResponse429Headers

type BatchGetTradersResponse429Headers struct {
	RateLimitLimit      *int
	RateLimitRemaining  *int
	RateLimitReset      *int
	RetryAfter          *int
	XRateLimitLimit     *int
	XRateLimitRemaining *int
	XRateLimitReset     *int
	XRequestId          *string
}

BatchGetTradersResponse429Headers the declared response headers of an HTTP 429 response for BatchGetTraders

type BatchGetTradersResponse503Headers

type BatchGetTradersResponse503Headers struct {
	RetryAfter *int
	XRequestId *string
}

BatchGetTradersResponse503Headers the declared response headers of an HTTP 503 response for BatchGetTraders

type BatchMarketFlowItem added in v0.4.0

type BatchMarketFlowItem struct {
	Data  *MarketFlow   `json:"data,omitempty"`
	Error *ApiErrorBody `json:"error,omitempty"`

	// Index Zero-based request index. Duplicate inputs keep separate result rows.
	Index  int                       `json:"index"`
	Input  string                    `json:"input"`
	Status BatchMarketFlowItemStatus `json:"status"`
}

BatchMarketFlowItem defines model for BatchMarketFlowItem.

type BatchMarketFlowItemStatus added in v0.4.0

type BatchMarketFlowItemStatus string

BatchMarketFlowItemStatus defines model for BatchMarketFlowItem.Status.

const (
	BatchMarketFlowItemStatusError BatchMarketFlowItemStatus = "error"
	BatchMarketFlowItemStatusOk    BatchMarketFlowItemStatus = "ok"
)

Defines values for BatchMarketFlowItemStatus.

func (BatchMarketFlowItemStatus) Valid added in v0.4.0

func (e BatchMarketFlowItemStatus) Valid() bool

Valid indicates whether the value is a known member of the BatchMarketFlowItemStatus enum.

type BatchRateLimitMeta

type BatchRateLimitMeta struct {
	Basis     BatchRateLimitMetaBasis `json:"basis"`
	Limit     int                     `json:"limit"`
	Remaining int                     `json:"remaining"`

	// Reset Unix timestamp when the batch item window resets.
	Reset int `json:"reset"`
}

BatchRateLimitMeta defines model for BatchRateLimitMeta.

type BatchRateLimitMetaBasis

type BatchRateLimitMetaBasis string

BatchRateLimitMetaBasis defines model for BatchRateLimitMeta.Basis.

const (
	BatchItemsPerMinute BatchRateLimitMetaBasis = "batch_items_per_minute"
)

Defines values for BatchRateLimitMetaBasis.

func (BatchRateLimitMetaBasis) Valid

func (e BatchRateLimitMetaBasis) Valid() bool

Valid indicates whether the value is a known member of the BatchRateLimitMetaBasis enum.

type BatchResponseMeta

type BatchResponseMeta struct {
	Cached      bool               `json:"cached"`
	FailedItems int                `json:"failed_items"`
	RateLimit   BatchRateLimitMeta `json:"rate_limit"`

	// RequestCost Number of batch item units reserved before execution.
	RequestCost int `json:"request_cost"`

	// RequestId Unique request ID (req_ prefix). The same value as the X-Request-Id response header, the request's usage accounting row and its log lines.
	RequestId       string `json:"request_id"`
	SuccessfulItems int    `json:"successful_items"`
	TotalItems      int    `json:"total_items"`
}

BatchResponseMeta defines model for BatchResponseMeta.

type BatchTraderItem

type BatchTraderItem struct {
	Data  *Trader       `json:"data,omitempty"`
	Error *ApiErrorBody `json:"error,omitempty"`

	// Index Zero-based request index. Duplicate inputs keep separate result rows.
	Index  int                   `json:"index"`
	Input  string                `json:"input"`
	Status BatchTraderItemStatus `json:"status"`
}

BatchTraderItem defines model for BatchTraderItem.

type BatchTraderItemStatus

type BatchTraderItemStatus string

BatchTraderItemStatus defines model for BatchTraderItem.Status.

const (
	BatchTraderItemStatusError BatchTraderItemStatus = "error"
	BatchTraderItemStatusOk    BatchTraderItemStatus = "ok"
)

Defines values for BatchTraderItemStatus.

func (BatchTraderItemStatus) Valid

func (e BatchTraderItemStatus) Valid() bool

Valid indicates whether the value is a known member of the BatchTraderItemStatus enum.

type CancelTraderExportParams added in v0.4.0

type CancelTraderExportParams struct {
	// JobId Export job id returned by the submit route.
	JobId int64 `form:"job_id" json:"job_id"`

	// XQueryValidation Opt into strict query-name validation. The default is compatible: unknown names are ignored and reported in X-Query-Ignored. With strict, an unknown name returns 400 bad_request with error.reason unknown_query_parameter before the handler runs, including when its percent escape is incomplete.
	XQueryValidation *CancelTraderExportParamsXQueryValidation `json:"X-Query-Validation,omitempty"`
}

CancelTraderExportParams defines parameters for CancelTraderExport.

type CancelTraderExportParamsXQueryValidation added in v0.4.0

type CancelTraderExportParamsXQueryValidation string

CancelTraderExportParamsXQueryValidation defines parameters for CancelTraderExport.

const (
	CancelTraderExportParamsXQueryValidationStrict CancelTraderExportParamsXQueryValidation = "strict"
)

Defines values for CancelTraderExportParamsXQueryValidation.

func (CancelTraderExportParamsXQueryValidation) Valid added in v0.4.0

Valid indicates whether the value is a known member of the CancelTraderExportParamsXQueryValidation enum.

type CancelTraderExportResponse added in v0.4.0

type CancelTraderExportResponse struct {
	Body         []byte
	HTTPResponse *http.Response
	// JSON200 the response for an HTTP 200 `application/json` response
	JSON200 *TraderExportJob
	// JSON400 the response for an HTTP 400 `application/json` response
	JSON400 *ApiError
	// JSON401 the response for an HTTP 401 `application/json` response
	JSON401 *ApiError
	// JSON402 the response for an HTTP 402 `application/json` response
	JSON402 *ApiError
	// JSON403 the response for an HTTP 403 `application/json` response
	JSON403 *ApiError
	// JSON404 the response for an HTTP 404 `application/json` response
	JSON404 *ApiError
	// JSON408 the response for an HTTP 408 `application/json` response
	JSON408 *ApiError
	// JSON423 the response for an HTTP 423 `application/json` response
	JSON423 *ApiError
	// JSON429 the response for an HTTP 429 `application/json` response
	JSON429 *ApiError
	// JSON500 the response for an HTTP 500 `application/json` response
	JSON500 *ApiError
	// JSON503 the response for an HTTP 503 `application/json` response
	JSON503 *ApiError
	// Headers200 the parsed response headers for an HTTP 200 response
	Headers200 *CancelTraderExportResponse200Headers
	// Headers429 the parsed response headers for an HTTP 429 response
	Headers429 *CancelTraderExportResponse429Headers
	// Headers503 the parsed response headers for an HTTP 503 response
	Headers503 *CancelTraderExportResponse503Headers
}

func ParseCancelTraderExportResponse added in v0.4.0

func ParseCancelTraderExportResponse(rsp *http.Response) (*CancelTraderExportResponse, error)

ParseCancelTraderExportResponse parses an HTTP response from a CancelTraderExportWithResponse call

func (CancelTraderExportResponse) ContentType added in v0.4.0

func (r CancelTraderExportResponse) ContentType() string

ContentType is a convenience method to retrieve the Content-Type value from the HTTP response headers

func (CancelTraderExportResponse) GetBody added in v0.4.0

func (r CancelTraderExportResponse) GetBody() []byte

GetBody returns the raw response body bytes

func (CancelTraderExportResponse) GetJSON200 added in v0.4.0

GetJSON200 returns the response for an HTTP 200 `application/json` response

func (CancelTraderExportResponse) GetJSON400 added in v0.4.0

func (r CancelTraderExportResponse) GetJSON400() *ApiError

GetJSON400 returns the response for an HTTP 400 `application/json` response

func (CancelTraderExportResponse) GetJSON401 added in v0.4.0

func (r CancelTraderExportResponse) GetJSON401() *ApiError

GetJSON401 returns the response for an HTTP 401 `application/json` response

func (CancelTraderExportResponse) GetJSON402 added in v0.4.0

func (r CancelTraderExportResponse) GetJSON402() *ApiError

GetJSON402 returns the response for an HTTP 402 `application/json` response

func (CancelTraderExportResponse) GetJSON403 added in v0.4.0

func (r CancelTraderExportResponse) GetJSON403() *ApiError

GetJSON403 returns the response for an HTTP 403 `application/json` response

func (CancelTraderExportResponse) GetJSON404 added in v0.4.0

func (r CancelTraderExportResponse) GetJSON404() *ApiError

GetJSON404 returns the response for an HTTP 404 `application/json` response

func (CancelTraderExportResponse) GetJSON408 added in v0.4.0

func (r CancelTraderExportResponse) GetJSON408() *ApiError

GetJSON408 returns the response for an HTTP 408 `application/json` response

func (CancelTraderExportResponse) GetJSON423 added in v0.4.0

func (r CancelTraderExportResponse) GetJSON423() *ApiError

GetJSON423 returns the response for an HTTP 423 `application/json` response

func (CancelTraderExportResponse) GetJSON429 added in v0.4.0

func (r CancelTraderExportResponse) GetJSON429() *ApiError

GetJSON429 returns the response for an HTTP 429 `application/json` response

func (CancelTraderExportResponse) GetJSON500 added in v0.4.0

func (r CancelTraderExportResponse) GetJSON500() *ApiError

GetJSON500 returns the response for an HTTP 500 `application/json` response

func (CancelTraderExportResponse) GetJSON503 added in v0.4.0

func (r CancelTraderExportResponse) GetJSON503() *ApiError

GetJSON503 returns the response for an HTTP 503 `application/json` response

func (CancelTraderExportResponse) Status added in v0.4.0

Status returns HTTPResponse.Status

func (CancelTraderExportResponse) StatusCode added in v0.4.0

func (r CancelTraderExportResponse) StatusCode() int

StatusCode returns HTTPResponse.StatusCode

type CancelTraderExportResponse200Headers added in v0.4.0

type CancelTraderExportResponse200Headers struct {
	RateLimitLimit      *int
	RateLimitRemaining  *int
	RateLimitReset      *int
	ServerTiming        *string
	XEffectiveQuery     *string
	XQueryIgnored       *string
	XRateLimitLimit     *int
	XRateLimitRemaining *int
	XRateLimitReset     *int
	XRequestId          *string
	XUsageAccounting    *string
}

CancelTraderExportResponse200Headers the declared response headers of an HTTP 200 response for CancelTraderExport

type CancelTraderExportResponse429Headers added in v0.4.0

type CancelTraderExportResponse429Headers struct {
	RateLimitLimit      *int
	RateLimitRemaining  *int
	RateLimitReset      *int
	RetryAfter          *int
	XRateLimitLimit     *int
	XRateLimitRemaining *int
	XRateLimitReset     *int
	XRequestId          *string
}

CancelTraderExportResponse429Headers the declared response headers of an HTTP 429 response for CancelTraderExport

type CancelTraderExportResponse503Headers added in v0.4.0

type CancelTraderExportResponse503Headers struct {
	RetryAfter *int
	XRequestId *string
}

CancelTraderExportResponse503Headers the declared response headers of an HTTP 503 response for CancelTraderExport

type CancelWhaleDatasetResponse added in v0.4.0

type CancelWhaleDatasetResponse struct {
	Body         []byte
	HTTPResponse *http.Response
	// JSON200 the response for an HTTP 200 `application/json` response
	JSON200 *WhaleDatasetJob
	// JSON400 the response for an HTTP 400 `application/json` response
	JSON400 *ApiError
	// JSON401 the response for an HTTP 401 `application/json` response
	JSON401 *ApiError
	// JSON402 the response for an HTTP 402 `application/json` response
	JSON402 *ApiError
	// JSON403 the response for an HTTP 403 `application/json` response
	JSON403 *ApiError
	// JSON404 the response for an HTTP 404 `application/json` response
	JSON404 *ApiError
	// JSON408 the response for an HTTP 408 `application/json` response
	JSON408 *ApiError
	// JSON423 the response for an HTTP 423 `application/json` response
	JSON423 *ApiError
	// JSON429 the response for an HTTP 429 `application/json` response
	JSON429 *ApiError
	// JSON500 the response for an HTTP 500 `application/json` response
	JSON500 *ApiError
	// JSON503 the response for an HTTP 503 `application/json` response
	JSON503 *ApiError
	// Headers429 the parsed response headers for an HTTP 429 response
	Headers429 *CancelWhaleDatasetResponse429Headers
	// Headers503 the parsed response headers for an HTTP 503 response
	Headers503 *CancelWhaleDatasetResponse503Headers
}

func ParseCancelWhaleDatasetResponse added in v0.4.0

func ParseCancelWhaleDatasetResponse(rsp *http.Response) (*CancelWhaleDatasetResponse, error)

ParseCancelWhaleDatasetResponse parses an HTTP response from a CancelWhaleDatasetWithResponse call

func (CancelWhaleDatasetResponse) ContentType added in v0.4.0

func (r CancelWhaleDatasetResponse) ContentType() string

ContentType is a convenience method to retrieve the Content-Type value from the HTTP response headers

func (CancelWhaleDatasetResponse) GetBody added in v0.4.0

func (r CancelWhaleDatasetResponse) GetBody() []byte

GetBody returns the raw response body bytes

func (CancelWhaleDatasetResponse) GetJSON200 added in v0.4.0

GetJSON200 returns the response for an HTTP 200 `application/json` response

func (CancelWhaleDatasetResponse) GetJSON400 added in v0.4.0

func (r CancelWhaleDatasetResponse) GetJSON400() *ApiError

GetJSON400 returns the response for an HTTP 400 `application/json` response

func (CancelWhaleDatasetResponse) GetJSON401 added in v0.4.0

func (r CancelWhaleDatasetResponse) GetJSON401() *ApiError

GetJSON401 returns the response for an HTTP 401 `application/json` response

func (CancelWhaleDatasetResponse) GetJSON402 added in v0.4.0

func (r CancelWhaleDatasetResponse) GetJSON402() *ApiError

GetJSON402 returns the response for an HTTP 402 `application/json` response

func (CancelWhaleDatasetResponse) GetJSON403 added in v0.4.0

func (r CancelWhaleDatasetResponse) GetJSON403() *ApiError

GetJSON403 returns the response for an HTTP 403 `application/json` response

func (CancelWhaleDatasetResponse) GetJSON404 added in v0.4.0

func (r CancelWhaleDatasetResponse) GetJSON404() *ApiError

GetJSON404 returns the response for an HTTP 404 `application/json` response

func (CancelWhaleDatasetResponse) GetJSON408 added in v0.4.0

func (r CancelWhaleDatasetResponse) GetJSON408() *ApiError

GetJSON408 returns the response for an HTTP 408 `application/json` response

func (CancelWhaleDatasetResponse) GetJSON423 added in v0.4.0

func (r CancelWhaleDatasetResponse) GetJSON423() *ApiError

GetJSON423 returns the response for an HTTP 423 `application/json` response

func (CancelWhaleDatasetResponse) GetJSON429 added in v0.4.0

func (r CancelWhaleDatasetResponse) GetJSON429() *ApiError

GetJSON429 returns the response for an HTTP 429 `application/json` response

func (CancelWhaleDatasetResponse) GetJSON500 added in v0.4.0

func (r CancelWhaleDatasetResponse) GetJSON500() *ApiError

GetJSON500 returns the response for an HTTP 500 `application/json` response

func (CancelWhaleDatasetResponse) GetJSON503 added in v0.4.0

func (r CancelWhaleDatasetResponse) GetJSON503() *ApiError

GetJSON503 returns the response for an HTTP 503 `application/json` response

func (CancelWhaleDatasetResponse) Status added in v0.4.0

Status returns HTTPResponse.Status

func (CancelWhaleDatasetResponse) StatusCode added in v0.4.0

func (r CancelWhaleDatasetResponse) StatusCode() int

StatusCode returns HTTPResponse.StatusCode

type CancelWhaleDatasetResponse429Headers added in v0.4.0

type CancelWhaleDatasetResponse429Headers struct {
	RateLimitLimit      *int
	RateLimitRemaining  *int
	RateLimitReset      *int
	RetryAfter          *int
	XRateLimitLimit     *int
	XRateLimitRemaining *int
	XRateLimitReset     *int
	XRequestId          *string
}

CancelWhaleDatasetResponse429Headers the declared response headers of an HTTP 429 response for CancelWhaleDataset

type CancelWhaleDatasetResponse503Headers added in v0.4.0

type CancelWhaleDatasetResponse503Headers struct {
	RetryAfter *int
	XRequestId *string
}

CancelWhaleDatasetResponse503Headers the declared response headers of an HTTP 503 response for CancelWhaleDataset

type Candle

type Candle struct {
	// C Close price in provider [0, 1] units (last observed point in the bucket).
	C float32 `json:"c"`

	// H High price in provider [0, 1] units (max observed in the bucket).
	H float32 `json:"h"`

	// L Low price in provider [0, 1] units (min observed in the bucket).
	L float32 `json:"l"`

	// O Open price in provider [0, 1] units (first observed point in the bucket).
	O float32 `json:"o"`

	// T Bucket-start unix epoch (seconds): UTC midnight for 1d, the ISO-week Monday's UTC midnight for 1w.
	T int64 `json:"t"`
}

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

type CategorySkillModelReadiness added in v0.2.0

type CategorySkillModelReadiness struct {
	AsOf                 time.Time                         `json:"as_of"`
	ModelVersion         string                            `json:"model_version"`
	ObservationStartedAt time.Time                         `json:"observation_started_at"`
	SourceLastSuccessAt  time.Time                         `json:"source_last_success_at"`
	Status               CategorySkillModelReadinessStatus `json:"status"`
	TaxonomyVersion      string                            `json:"taxonomy_version"`
}

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

type CategorySkillModelReadinessStatus added in v0.2.0

type CategorySkillModelReadinessStatus string

CategorySkillModelReadinessStatus defines model for CategorySkillModelReadiness.Status.

const (
	CategorySkillModelReadinessStatusDegraded     CategorySkillModelReadinessStatus = "degraded"
	CategorySkillModelReadinessStatusInsufficient CategorySkillModelReadinessStatus = "insufficient"
	CategorySkillModelReadinessStatusLive         CategorySkillModelReadinessStatus = "live"
	CategorySkillModelReadinessStatusStale        CategorySkillModelReadinessStatus = "stale"
	CategorySkillModelReadinessStatusUnknown      CategorySkillModelReadinessStatus = "unknown"
)

Defines values for CategorySkillModelReadinessStatus.

func (CategorySkillModelReadinessStatus) Valid added in v0.2.0

Valid indicates whether the value is a known member of the CategorySkillModelReadinessStatus enum.

type CategorySkillV2 added in v0.2.0

type CategorySkillV2 struct {
	AsOf                       time.Time                     `json:"as_of"`
	BrierEventAvg              float32                       `json:"brier_event_avg"`
	CanonicalCategory          string                        `json:"canonical_category"`
	EdgeLower95                float32                       `json:"edge_lower_95"`
	EdgeMean                   float32                       `json:"edge_mean"`
	EdgeSd                     float32                       `json:"edge_sd"`
	EdgeSe                     float32                       `json:"edge_se"`
	IndependentEventCount      int                           `json:"independent_event_count"`
	LatestObservationAt        time.Time                     `json:"latest_observation_at"`
	ModelVersion               string                        `json:"model_version"`
	ObservationStartedAt       time.Time                     `json:"observation_started_at"`
	Platform                   CategorySkillV2Platform       `json:"platform"`
	ResolvedConditionCount     int                           `json:"resolved_condition_count"`
	Scope                      CategorySkillV2Scope          `json:"scope"`
	SourceCoverage             CategorySkillV2SourceCoverage `json:"source_coverage"`
	SourceLastSuccessAt        time.Time                     `json:"source_last_success_at"`
	Status                     CategorySkillV2Status         `json:"status"`
	TaxonomyVersion            string                        `json:"taxonomy_version"`
	UnresolvedObservationCount int                           `json:"unresolved_observation_count"`
}

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.

type CategorySkillV2Platform added in v0.2.0

type CategorySkillV2Platform string

CategorySkillV2Platform defines model for CategorySkillV2.Platform.

const (
	CategorySkillV2PlatformPolymarket CategorySkillV2Platform = "polymarket"
)

Defines values for CategorySkillV2Platform.

func (CategorySkillV2Platform) Valid added in v0.2.0

func (e CategorySkillV2Platform) Valid() bool

Valid indicates whether the value is a known member of the CategorySkillV2Platform enum.

type CategorySkillV2Scope added in v0.2.0

type CategorySkillV2Scope string

CategorySkillV2Scope defines model for CategorySkillV2.Scope.

const (
	CategorySkillV2ScopeObservedGoldskyPrimaryTakerFill CategorySkillV2Scope = "observed_goldsky_primary_taker_fill"
)

Defines values for CategorySkillV2Scope.

func (CategorySkillV2Scope) Valid added in v0.2.0

func (e CategorySkillV2Scope) Valid() bool

Valid indicates whether the value is a known member of the CategorySkillV2Scope enum.

type CategorySkillV2SourceCoverage added in v0.2.0

type CategorySkillV2SourceCoverage string

CategorySkillV2SourceCoverage defines model for CategorySkillV2.SourceCoverage.

const (
	CategorySkillV2SourceCoverageGradedWalletFills          CategorySkillV2SourceCoverage = "graded_wallet_fills"
	CategorySkillV2SourceCoveragePartialWhaleThresholdFills CategorySkillV2SourceCoverage = "partial_whale_threshold_fills"
)

Defines values for CategorySkillV2SourceCoverage.

func (CategorySkillV2SourceCoverage) Valid added in v0.2.0

Valid indicates whether the value is a known member of the CategorySkillV2SourceCoverage enum.

type CategorySkillV2Status added in v0.2.0

type CategorySkillV2Status string

CategorySkillV2Status defines model for CategorySkillV2.Status.

const (
	CategorySkillV2StatusDegraded     CategorySkillV2Status = "degraded"
	CategorySkillV2StatusInsufficient CategorySkillV2Status = "insufficient"
	CategorySkillV2StatusLive         CategorySkillV2Status = "live"
	CategorySkillV2StatusStale        CategorySkillV2Status = "stale"
	CategorySkillV2StatusUnknown      CategorySkillV2Status = "unknown"
)

Defines values for CategorySkillV2Status.

func (CategorySkillV2Status) Valid added in v0.2.0

func (e CategorySkillV2Status) Valid() bool

Valid indicates whether the value is a known member of the CategorySkillV2Status enum.

type Client

type Client struct {
	// The endpoint of the server conforming to this interface, with scheme,
	// https://api.deepmap.com for example. This can contain a path relative
	// to the server, such as https://api.deepmap.com/dev-test, and all the
	// paths in the swagger spec will be appended to the server.
	Server string

	// Doer for performing requests, typically a *http.Client with any
	// customized settings, such as certificate chains.
	Client HttpRequestDoer

	// A list of callbacks for modifying requests which are generated before sending over
	// the network.
	RequestEditors []RequestEditorFn
}

Client which conforms to the OpenAPI3 specification for this service.

func NewClient

func NewClient(server string, opts ...ClientOption) (*Client, error)

Creates a new Client, with reasonable defaults

func (*Client) ActivateWebhookSecret added in v0.3.0

func (c *Client) ActivateWebhookSecret(ctx context.Context, id int64, params *ActivateWebhookSecretParams, reqEditors ...RequestEditorFn) (*http.Response, error)

ActivateWebhookSecret Activate a staged builder webhook signing secret

Promotes the prepared signing secret to current, returns it once, and signs every delivery with both the new and previous secrets for one hour. Call retire after the receiver has completed its rollout. The current secret remains available through the existing immediate rotate-secret route for emergency replacement.

Corresponds with POST /api/v1/webhooks/{id}/rotate-secret/activate (the `ActivateWebhookSecret` operationId).

func (*Client) BatchGetMarketFlow added in v0.4.0

func (c *Client) BatchGetMarketFlow(ctx context.Context, params *BatchGetMarketFlowParams, body BatchGetMarketFlowJSONRequestBody, reqEditors ...RequestEditorFn) (*http.Response, error)

BatchGetMarketFlow Batch market flow

Returns each market's flow and top positions for 1-25 raw provider condition_id values. Results preserve request order, duplicate inputs return duplicate rows, and each item is charged one batch item unit before execution. Do not pass prefixed mkt_ IDs; use market.condition_id from search or explore.

Takes a body of the `application/json` content type.

Corresponds with POST /api/v1/markets/flow/batch (the `BatchGetMarketFlow` operationId).

func (*Client) BatchGetMarketFlowWithBody added in v0.4.0

func (c *Client) BatchGetMarketFlowWithBody(ctx context.Context, params *BatchGetMarketFlowParams, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*http.Response, error)

BatchGetMarketFlowWithBody Batch market flow

Returns each market's flow and top positions for 1-25 raw provider condition_id values. Results preserve request order, duplicate inputs return duplicate rows, and each item is charged one batch item unit before execution. Do not pass prefixed mkt_ IDs; use market.condition_id from search or explore.

Takes any type of body and a specified content type.

Corresponds with POST /api/v1/markets/flow/batch (the `BatchGetMarketFlow` operationId).

func (*Client) BatchGetMarketIntel

func (c *Client) BatchGetMarketIntel(ctx context.Context, params *BatchGetMarketIntelParams, body BatchGetMarketIntelJSONRequestBody, reqEditors ...RequestEditorFn) (*http.Response, error)

BatchGetMarketIntel Batch market intelligence

Deprecated since #16312: use POST /api/v1/markets/flow/batch, which returns the same items under object market_flow_batch. This path stays live, keeps object market_intel_batch, and answers with Deprecation and successor Link headers. Returns each market's flow and top positions for 1-25 raw provider condition_id values. Results preserve request order, duplicate inputs return duplicate rows, and each item is charged one batch item unit before execution. Do not pass prefixed mkt_ IDs; use market.condition_id from search or explore.

Takes a body of the `application/json` content type.

Corresponds with POST /api/v1/markets/intel/batch (the `BatchGetMarketIntel` operationId). Deprecated: this operation has been marked as deprecated upstream, but no `x-deprecated-reason` was set

func (*Client) BatchGetMarketIntelWithBody

func (c *Client) BatchGetMarketIntelWithBody(ctx context.Context, params *BatchGetMarketIntelParams, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*http.Response, error)

BatchGetMarketIntelWithBody Batch market intelligence

Deprecated since #16312: use POST /api/v1/markets/flow/batch, which returns the same items under object market_flow_batch. This path stays live, keeps object market_intel_batch, and answers with Deprecation and successor Link headers. Returns each market's flow and top positions for 1-25 raw provider condition_id values. Results preserve request order, duplicate inputs return duplicate rows, and each item is charged one batch item unit before execution. Do not pass prefixed mkt_ IDs; use market.condition_id from search or explore.

Takes any type of body and a specified content type.

Corresponds with POST /api/v1/markets/intel/batch (the `BatchGetMarketIntel` operationId). Deprecated: this operation has been marked as deprecated upstream, but no `x-deprecated-reason` was set

func (*Client) BatchGetTraders

func (c *Client) BatchGetTraders(ctx context.Context, params *BatchGetTradersParams, body BatchGetTradersJSONRequestBody, reqEditors ...RequestEditorFn) (*http.Response, error)

BatchGetTraders Batch traders

Returns traders for 1-25 wallet addresses or known usernames. Results preserve request order, duplicate inputs return duplicate rows, and each item is charged one batch item unit before execution. A wallet address this API does not track yet returns data with sync_status "unknown", matching the single trader endpoint. A username, trd_ id or numeric trader id that resolves to no trader is a per-item not_found error with error.param "traders", never an ok row keyed on the input.

Takes a body of the `application/json` content type.

Corresponds with POST /api/v1/traders/batch (the `BatchGetTraders` operationId).

func (*Client) BatchGetTradersWithBody

func (c *Client) BatchGetTradersWithBody(ctx context.Context, params *BatchGetTradersParams, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*http.Response, error)

BatchGetTradersWithBody Batch traders

Returns traders for 1-25 wallet addresses or known usernames. Results preserve request order, duplicate inputs return duplicate rows, and each item is charged one batch item unit before execution. A wallet address this API does not track yet returns data with sync_status "unknown", matching the single trader endpoint. A username, trd_ id or numeric trader id that resolves to no trader is a per-item not_found error with error.param "traders", never an ok row keyed on the input.

Takes any type of body and a specified content type.

Corresponds with POST /api/v1/traders/batch (the `BatchGetTraders` operationId).

func (*Client) CancelTraderExport added in v0.4.0

func (c *Client) CancelTraderExport(ctx context.Context, address string, params *CancelTraderExportParams, reqEditors ...RequestEditorFn) (*http.Response, error)

CancelTraderExport Cancel a trader export job

Cancels a submitted export and returns the job resource, the same shape the status route returns. A queued job reads cancelled at once and no worker will start it. A running job reads cancel_requested until the worker reaches its next safe point, then cancelled: the worker checks every 5 seconds while it reads the snapshot and between upload parts, and once more at the last point before the file is published; a storage request already in flight finishes first (each is bounded at 120 seconds), and a partial upload is discarded. If the worker itself stops first, the job reads cancelled after its 30-minute lease lapses, at the next hourly cleanup. A job a cancel can no longer reach is returned unchanged with 200: once its upload is being completed it finishes as ready (or reconcile_required, then ready or failed), and ready, failed, expired and cancelled jobs are terminal. A cancel never deletes a ready file; compare status before and after. Repeating the request is safe: it converges on the same state and never repeats a transition, so a client that lost the answer can send it again or read the status route. While terminal is false, poll the status route after poll_after_s. Quota is unchanged: the submit's reservation keeps counting toward the per-user daily and per-address hourly export caps for its full window, as a failed export's does, and a job its owner asked to cancel is never reused by a later submit, which reserves a new job. Webhook endpoints subscribed to export_job_cancelled receive it when the job reaches cancelled. An unknown job id, or a job owned by another account or submitted for another trader, answers 404 exactly as the status route does.

Corresponds with POST /api/v1/trader/{address}/export/cancel (the `CancelTraderExport` operationId).

func (*Client) CancelWhaleDataset added in v0.4.0

func (c *Client) CancelWhaleDataset(ctx context.Context, jobId int64, reqEditors ...RequestEditorFn) (*http.Response, error)

CancelWhaleDataset Cancel a whale dataset job

Cancel queued jobs immediately and request running jobs stop at their next safe point. Repeating cancel converges on the current state; cancellation after the completion fence leaves the artifact ready. Paid export scope; jobs are private to the credential owner. Shares the 20/day owner export quota and fair worker admission with trader exports; datasets also have a combined 5/hour quota. Three worker attempts, 24-hour retention, no partial download; cancellation consumes its reservation. Coverage is whale alerts, not all provider fills.

Corresponds with POST /api/v1/datasets/whale-trades/{job_id}/cancel (the `CancelWhaleDataset` operationId).

func (*Client) CreateMcpJsonRpcResponse

func (c *Client) CreateMcpJsonRpcResponse(ctx context.Context, params *CreateMcpJsonRpcResponseParams, body CreateMcpJsonRpcResponseJSONRequestBody, reqEditors ...RequestEditorFn) (*http.Response, error)

CreateMcpJsonRpcResponse Remote MCP endpoint (JSON-RPC)

Model Context Protocol (MCP) Streamable HTTP transport. Accepts one JSON-RPC 2.0 request or notification. ID-bearing initialize, ping, tools/list, and tools/call requests receive one same-ID JSON-RPC response. ID-less ping, notifications/initialized, and notifications/cancelled receive HTTP 202 with no body; other ID-less methods and unsolicited response messages receive HTTP 400 with no body. Unknown cancellation IDs are ignored; cancellation does not stop running tool work. Remote MCP exposes 46 read-only tools for public V1 read operations: get_leaderboard, get_trader, batch_get_traders, get_large_trades, get_large_trade, get_large_trades_history, get_whale_trades, get_whale_trade, get_whale_trades_history, get_pre_game_sides, get_pre_game_side_observations, get_sports_edge_signals, get_sports_edge_observations, list_games, get_game, get_market_flow, batch_get_market_flow, get_market_intel, batch_get_market_intel, get_smart_money_flows, get_sharp_money_flows, get_market_snapshot, get_suspicious_trades, get_suspicious_trade, get_insider_radar, get_insider_radar_flag, get_positions, get_position_timeline, get_position_timeline_by_id, search_markets, search_content, explore_markets, get_event_replay_since, list_webhooks, get_webhook, get_daily_report_snapshot, get_weekly_report_snapshot, get_monthly_report_snapshot, get_report, get_trader_export_snapshot, get_platforms, get_large_positions, get_trending_wallets, get_trader_pnl, get_pick_of_the_day, get_pick_of_the_day_archive. Webhook create/update/delete/verify/rotate operations are intentionally not exposed as remote MCP tools. The remote endpoint advertises tools only; it does not implement resources/list, resources/read, prompts/list, or prompts/get. Each tool dispatches to the matching /api/v1/* handler in-process so auth, rate limits, and payload shape match. initialize, notifications/initialized, ping and tools/list answer without a credential; tools/call (and any GET) need Authorization: Bearer <token> with an OAuth 2.1 access token (see the oauth2 security scheme; a tool outside the token's scopes returns isError) or an API key, and without one answer HTTP 401 with a WWW-Authenticate challenge whose resource_metadata names the RFC 9728 document at /.well-known/oauth-protected-resource/api/v1/mcp. A key in a ?token= query parameter is rejected on every authenticated route (the public routes ignore it) with 401 invalid_api_key and error.reason api_key_in_query, because URLs land in shell history, browser history, and logs; a client that can only take a URL can run the @0xinsider/mcp stdio package. Mcp-Session-Id is minted on initialize and echoed on every response. Origin header, when present, is validated against the 0xinsider + localhost allowlist. tools/call arguments are validated against the tool's advertised inputSchema before anything runs: a non-object, an unknown key, a wrong type, an out-of-range number, a value outside an enum or an argument combination outside a oneOf answers a tool result with isError true whose text names the field, never a query built from the arguments that fit. Every tools/call result carries the REST envelope's meta verbatim (request_id, cached, cache_age_s, cost, and the route's provenance such as source and completeness on get_whale_trades_history or ranking_source, directional_source and the category_skill_* fields on get_sports_edge_signals) as structuredContent.meta beside the payload's own keys, and a tool failure carries structuredContent.error with the REST error fields verbatim (code, reason, param, doc_url, retry_at) plus retry_after_seconds, request_id and status, beside its text. The MCP-Protocol-Version request header is checked on every POST and GET: a value outside 2025-11-25, 2025-06-18, 2025-03-26 and 2024-11-05 answers HTTP 400 with JSON-RPC error -32600 before the body is read; an absent header is served as 2025-03-26, the transport specification's compatibility default. Browser preflight allows the header.

Takes a body of the `application/json` content type.

Corresponds with POST /api/v1/mcp (the `CreateMcpJsonRpcResponse` operationId).

func (*Client) CreateMcpJsonRpcResponseWithBody

func (c *Client) CreateMcpJsonRpcResponseWithBody(ctx context.Context, params *CreateMcpJsonRpcResponseParams, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*http.Response, error)

CreateMcpJsonRpcResponseWithBody Remote MCP endpoint (JSON-RPC)

Model Context Protocol (MCP) Streamable HTTP transport. Accepts one JSON-RPC 2.0 request or notification. ID-bearing initialize, ping, tools/list, and tools/call requests receive one same-ID JSON-RPC response. ID-less ping, notifications/initialized, and notifications/cancelled receive HTTP 202 with no body; other ID-less methods and unsolicited response messages receive HTTP 400 with no body. Unknown cancellation IDs are ignored; cancellation does not stop running tool work. Remote MCP exposes 46 read-only tools for public V1 read operations: get_leaderboard, get_trader, batch_get_traders, get_large_trades, get_large_trade, get_large_trades_history, get_whale_trades, get_whale_trade, get_whale_trades_history, get_pre_game_sides, get_pre_game_side_observations, get_sports_edge_signals, get_sports_edge_observations, list_games, get_game, get_market_flow, batch_get_market_flow, get_market_intel, batch_get_market_intel, get_smart_money_flows, get_sharp_money_flows, get_market_snapshot, get_suspicious_trades, get_suspicious_trade, get_insider_radar, get_insider_radar_flag, get_positions, get_position_timeline, get_position_timeline_by_id, search_markets, search_content, explore_markets, get_event_replay_since, list_webhooks, get_webhook, get_daily_report_snapshot, get_weekly_report_snapshot, get_monthly_report_snapshot, get_report, get_trader_export_snapshot, get_platforms, get_large_positions, get_trending_wallets, get_trader_pnl, get_pick_of_the_day, get_pick_of_the_day_archive. Webhook create/update/delete/verify/rotate operations are intentionally not exposed as remote MCP tools. The remote endpoint advertises tools only; it does not implement resources/list, resources/read, prompts/list, or prompts/get. Each tool dispatches to the matching /api/v1/* handler in-process so auth, rate limits, and payload shape match. initialize, notifications/initialized, ping and tools/list answer without a credential; tools/call (and any GET) need Authorization: Bearer <token> with an OAuth 2.1 access token (see the oauth2 security scheme; a tool outside the token's scopes returns isError) or an API key, and without one answer HTTP 401 with a WWW-Authenticate challenge whose resource_metadata names the RFC 9728 document at /.well-known/oauth-protected-resource/api/v1/mcp. A key in a ?token= query parameter is rejected on every authenticated route (the public routes ignore it) with 401 invalid_api_key and error.reason api_key_in_query, because URLs land in shell history, browser history, and logs; a client that can only take a URL can run the @0xinsider/mcp stdio package. Mcp-Session-Id is minted on initialize and echoed on every response. Origin header, when present, is validated against the 0xinsider + localhost allowlist. tools/call arguments are validated against the tool's advertised inputSchema before anything runs: a non-object, an unknown key, a wrong type, an out-of-range number, a value outside an enum or an argument combination outside a oneOf answers a tool result with isError true whose text names the field, never a query built from the arguments that fit. Every tools/call result carries the REST envelope's meta verbatim (request_id, cached, cache_age_s, cost, and the route's provenance such as source and completeness on get_whale_trades_history or ranking_source, directional_source and the category_skill_* fields on get_sports_edge_signals) as structuredContent.meta beside the payload's own keys, and a tool failure carries structuredContent.error with the REST error fields verbatim (code, reason, param, doc_url, retry_at) plus retry_after_seconds, request_id and status, beside its text. The MCP-Protocol-Version request header is checked on every POST and GET: a value outside 2025-11-25, 2025-06-18, 2025-03-26 and 2024-11-05 answers HTTP 400 with JSON-RPC error -32600 before the body is read; an absent header is served as 2025-03-26, the transport specification's compatibility default. Browser preflight allows the header.

Takes any type of body and a specified content type.

Corresponds with POST /api/v1/mcp (the `CreateMcpJsonRpcResponse` operationId).

func (*Client) CreateWebhook

func (c *Client) CreateWebhook(ctx context.Context, params *CreateWebhookParams, body CreateWebhookJSONRequestBody, reqEditors ...RequestEditorFn) (*http.Response, error)

CreateWebhook Create a builder webhook destination

Creates a pending HTTPS webhook destination. The response includes one-time signing_secret and verification.token values. Deliveries are not sent until the endpoint is verified, and verification requires the destination to answer 2xx to a signed webhook.verification challenge (see POST /api/v1/webhooks/{id}/verify). The subscribable event_types and their data payload shapes are described by GET /api/v1/webhooks/events; the per-endpoint delivery log is GET /api/v1/webhooks/{id}/deliveries. Export lifecycle event types (export_job_ready, export_job_failed, export_job_expired, export_job_cancelled) are delivered only to the API-key account that created the export and contain no download URL; use the authorized export status and download routes. Four subscribable event types are Pro-only and only deliver to API keys on an active Pro subscription. whale_trades_inserted is one of them, gated by the same SubscriberScope::InsiderOnly mechanism as the other three (each type carries its own LiveEventContract entry; they share the scope value). The other three: wallet_grade_changed (data: wallet, trader_id, old_grade, new_grade, direction (upgrade|downgrade), skill_index, final_score, date) fires on a Pass-2 grade transition; insider_radar_flag_raised (data: trade_id, wallet, trader_id, condition_id, suspicion_score, track, side (yes|no), size, price) fires the first time a trade's suspicion score crosses the radar flag threshold; sharp_money_flow_detected (data: condition_id, net_flow_usd, abs_net_flow_usd, dominant_side (yes|no), grade_floor (S|A|B|C|D|F), whale_trade_count, window) fires when a scheduled scanner detects ranked-trader net flow crossing a threshold (up or down) on a market, and smart_money_flow_detected is its deprecated spelling of the same event. live_sports_updated (data: event_slug, game_id, league, version, changed, observed_at, published_at, status, period, clock, live, ended, scores, series_format, snapshot_url) is ungated and fires as a bounded per-game pulse when a live game's scores, status, period or live/ended state moves: at most one delivery per game per 20 seconds, with a live or ended transition exempt from that interval, and the game clock alone never firing one. version is a durable per-game ordinal, changed lists the material fields that moved since that game's previous delivered pulse, and snapshot_url is where to re-read the whole game after a gap. Delivery signing: each delivery request carries one or more HMAC-SHA256 signatures in the x-0xinsider-signature header as comma-separated v1=<hex> candidates. During staged rotation, the current and previous signing secrets are both signed for one hour; accept any valid candidate. Each candidate is HMAC-SHA256(signing_secret, "<timestamp>.<raw_request_body>"). The signed <timestamp> is sent separately as x-0xinsider-timestamp (unix seconds). To verify a delivery: read x-0xinsider-timestamp, reject it if it differs from the current time by more than 300 seconds, recompute each candidate over "<timestamp>.<raw_body>" with the active secrets, and compare using a constant-time comparison. Each delivery also carries x-0xinsider-event-id, x-0xinsider-event-type, x-0xinsider-delivery-id, and x-0xinsider-delivery-attempt headers. Retries and disabling: ordinary transient delivery failures use stable jitter between half and the existing 60, 120, 240, 480, 960, 1920 and 3600-second upper bounds (retry_policy.retry_horizon_seconds = 7380); on 408, 429, or 5xx, a valid Retry-After delta-seconds or HTTP-date replaces that one wait and is clamped to 60–3600 seconds, while missing, malformed, past, or non-retryable-response hints use the ordinary schedule. The delivery still has eight attempts (retry_policy.max_attempts), and an eighth failure becomes dead_letter. The delivery log exposes retry_schedule_reason and next_attempt_at so a receiver can see the active schedule. Separately, an endpoint is disabled after 8 consecutive failed attempts across all of its deliveries (retry_policy.disable_after_consecutive_failures); any successful attempt resets that count, so a busy endpoint that goes down can be disabled in minutes, well before any single delivery exhausts its retries. Disabling dead-letters every delivery still queued for the endpoint and emails the account owner, within about an hour, with each disabled endpoint and its last failed response. Re-enable it with PATCH /api/v1/webhooks/{id} {"enabled": true}; re-enabling does not resend dead-lettered deliveries. Resend each one with POST /api/v1/webhooks/{id}/deliveries/{delivery_id}/redeliver, or catch up with GET /api/v1/events/feed/since from the last event you processed. GET /api/v1/webhooks/{id}/deliveries shows next_attempt_at and retry_schedule_reason for a delivery still waiting to retry.

Takes a body of the `application/json` content type.

Corresponds with POST /api/v1/webhooks (the `CreateWebhook` operationId).

func (*Client) CreateWebhookWithBody

func (c *Client) CreateWebhookWithBody(ctx context.Context, params *CreateWebhookParams, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*http.Response, error)

CreateWebhookWithBody Create a builder webhook destination

Creates a pending HTTPS webhook destination. The response includes one-time signing_secret and verification.token values. Deliveries are not sent until the endpoint is verified, and verification requires the destination to answer 2xx to a signed webhook.verification challenge (see POST /api/v1/webhooks/{id}/verify). The subscribable event_types and their data payload shapes are described by GET /api/v1/webhooks/events; the per-endpoint delivery log is GET /api/v1/webhooks/{id}/deliveries. Export lifecycle event types (export_job_ready, export_job_failed, export_job_expired, export_job_cancelled) are delivered only to the API-key account that created the export and contain no download URL; use the authorized export status and download routes. Four subscribable event types are Pro-only and only deliver to API keys on an active Pro subscription. whale_trades_inserted is one of them, gated by the same SubscriberScope::InsiderOnly mechanism as the other three (each type carries its own LiveEventContract entry; they share the scope value). The other three: wallet_grade_changed (data: wallet, trader_id, old_grade, new_grade, direction (upgrade|downgrade), skill_index, final_score, date) fires on a Pass-2 grade transition; insider_radar_flag_raised (data: trade_id, wallet, trader_id, condition_id, suspicion_score, track, side (yes|no), size, price) fires the first time a trade's suspicion score crosses the radar flag threshold; sharp_money_flow_detected (data: condition_id, net_flow_usd, abs_net_flow_usd, dominant_side (yes|no), grade_floor (S|A|B|C|D|F), whale_trade_count, window) fires when a scheduled scanner detects ranked-trader net flow crossing a threshold (up or down) on a market, and smart_money_flow_detected is its deprecated spelling of the same event. live_sports_updated (data: event_slug, game_id, league, version, changed, observed_at, published_at, status, period, clock, live, ended, scores, series_format, snapshot_url) is ungated and fires as a bounded per-game pulse when a live game's scores, status, period or live/ended state moves: at most one delivery per game per 20 seconds, with a live or ended transition exempt from that interval, and the game clock alone never firing one. version is a durable per-game ordinal, changed lists the material fields that moved since that game's previous delivered pulse, and snapshot_url is where to re-read the whole game after a gap. Delivery signing: each delivery request carries one or more HMAC-SHA256 signatures in the x-0xinsider-signature header as comma-separated v1=<hex> candidates. During staged rotation, the current and previous signing secrets are both signed for one hour; accept any valid candidate. Each candidate is HMAC-SHA256(signing_secret, "<timestamp>.<raw_request_body>"). The signed <timestamp> is sent separately as x-0xinsider-timestamp (unix seconds). To verify a delivery: read x-0xinsider-timestamp, reject it if it differs from the current time by more than 300 seconds, recompute each candidate over "<timestamp>.<raw_body>" with the active secrets, and compare using a constant-time comparison. Each delivery also carries x-0xinsider-event-id, x-0xinsider-event-type, x-0xinsider-delivery-id, and x-0xinsider-delivery-attempt headers. Retries and disabling: ordinary transient delivery failures use stable jitter between half and the existing 60, 120, 240, 480, 960, 1920 and 3600-second upper bounds (retry_policy.retry_horizon_seconds = 7380); on 408, 429, or 5xx, a valid Retry-After delta-seconds or HTTP-date replaces that one wait and is clamped to 60–3600 seconds, while missing, malformed, past, or non-retryable-response hints use the ordinary schedule. The delivery still has eight attempts (retry_policy.max_attempts), and an eighth failure becomes dead_letter. The delivery log exposes retry_schedule_reason and next_attempt_at so a receiver can see the active schedule. Separately, an endpoint is disabled after 8 consecutive failed attempts across all of its deliveries (retry_policy.disable_after_consecutive_failures); any successful attempt resets that count, so a busy endpoint that goes down can be disabled in minutes, well before any single delivery exhausts its retries. Disabling dead-letters every delivery still queued for the endpoint and emails the account owner, within about an hour, with each disabled endpoint and its last failed response. Re-enable it with PATCH /api/v1/webhooks/{id} {"enabled": true}; re-enabling does not resend dead-lettered deliveries. Resend each one with POST /api/v1/webhooks/{id}/deliveries/{delivery_id}/redeliver, or catch up with GET /api/v1/events/feed/since from the last event you processed. GET /api/v1/webhooks/{id}/deliveries shows next_attempt_at and retry_schedule_reason for a delivery still waiting to retry.

Takes any type of body and a specified content type.

Corresponds with POST /api/v1/webhooks (the `CreateWebhook` operationId).

func (*Client) DeleteWebhook

func (c *Client) DeleteWebhook(ctx context.Context, id int64, params *DeleteWebhookParams, reqEditors ...RequestEditorFn) (*http.Response, error)

DeleteWebhook Disable a builder webhook destination

Soft-deletes a webhook destination owned by the authenticated API key user. Existing delivery audit rows remain retained.

Corresponds with DELETE /api/v1/webhooks/{id} (the `DeleteWebhook` operationId).

func (*Client) DownloadTraderExport

func (c *Client) DownloadTraderExport(ctx context.Context, address string, params *DownloadTraderExportParams, reqEditors ...RequestEditorFn) (*http.Response, error)

DownloadTraderExport Download a finished trader export

Redirects (302) to a short-lived presigned URL for the finished export file while the job status is 'ready' and expires_at has not passed. The file is gzip-compressed and served with the format's Content-Type (application/json, application/x-ndjson, or text/csv). Returns 400 while the job is queued, running, cancel_requested or reconciling (poll the status route first) and for a failed or cancelled job (submit a new export); returns 410 with error.code not_found and error.reason export_expired once the retention window has passed or the file has been retired, so the redirect never points at a file that is gone.

Corresponds with GET /api/v1/trader/{address}/export/download (the `DownloadTraderExport` operationId).

func (*Client) DownloadWhaleDataset added in v0.4.0

func (c *Client) DownloadWhaleDataset(ctx context.Context, jobId int64, reqEditors ...RequestEditorFn) (*http.Response, error)

DownloadWhaleDataset Download an immutable whale dataset

Download only a ready artifact; status handles failure and cancellation. Retired artifacts return 410 at serving time. Paid export scope; jobs are private to the credential owner. Shares the 20/day owner export quota and fair worker admission with trader exports; datasets also have a combined 5/hour quota. Three worker attempts, 24-hour retention, no partial download; cancellation consumes its reservation. Coverage is whale alerts, not all provider fills.

Corresponds with GET /api/v1/datasets/whale-trades/{job_id}/download (the `DownloadWhaleDataset` operationId).

func (*Client) ExploreMarkets

func (c *Client) ExploreMarkets(ctx context.Context, params *ExploreMarketsParams, reqEditors ...RequestEditorFn) (*http.Response, error)

ExploreMarkets Explore markets

Browse whale-active titled markets with category, platform, status, and keyword filters. Explore is Polymarket-only: the platform parameter is accepted for backward-compatibility but every request returns Polymarket markets. Paginates visible discovery entries rather than raw market rows, returns live category/platform facets alongside grouped event clusters or standalone markets, and includes total on the first page only. Each grouped event contains at most 12 markets, retaining the selected representative within that cap. Categories come straight from provider metadata (Polymarket Gamma) and facets are flat value/label/count rows.

Corresponds with GET /api/v1/markets/explore (the `ExploreMarkets` operationId).

func (*Client) GetAccountIdentity added in v0.2.0

func (c *Client) GetAccountIdentity(ctx context.Context, params *GetAccountIdentityParams, reqEditors ...RequestEditorFn) (*http.Response, error)

GetAccountIdentity Identify the authenticated account and credential

Returns caller-owned account and credential IDs, credential validity, paid-data entitlement and approved scopes. Null scopes mean full legacy developer-key access. Valid credentials can use this control-plane diagnostic path after paid access lapses; data routes still require active paid access. OAuth grants and named integration keys need read scope. Does not return credentials, payment details or personal contact details.

Corresponds with GET /api/v1/me (the `GetAccountIdentity` operationId).

func (*Client) GetApiDiscovery

func (c *Client) GetApiDiscovery(ctx context.Context, params *GetApiDiscoveryParams, reqEditors ...RequestEditorFn) (*http.Response, error)

GetApiDiscovery API discovery

Unauthenticated API-origin discovery document pointing agents to the canonical API base URL, full docs, web-origin OpenAPI spec, health check, and the COMPLETE index of authenticated data routes. data.authenticated_routes is the whole authenticated route surface, not a sample: it carries every authenticated route this spec documents, so an agent that starts here never has to guess a path. The index is a hand-maintained const in backend/src/api_v1/discovery.rs kept in step with this spec by review; no automated check compares the two, so treat this spec as authoritative if they ever disagree.

Corresponds with GET /api/v1 (the `GetApiDiscovery` operationId).

func (*Client) GetCoverage added in v0.4.0

func (c *Client) GetCoverage(ctx context.Context, params *GetCoverageParams, reqEditors ...RequestEditorFn) (*http.Response, error)

GetCoverage Which reads the API serves for Polymarket

Unauthenticated discovery endpoint that declares which V1 data surfaces the API serves for Polymarket, the one venue it covers. Every capability reports supported. Canonical since #16315; GET /api/v1/platforms is its deprecated alias with the same body.

Corresponds with GET /api/v1/coverage (the `GetCoverage` operationId).

func (*Client) GetDailyReportSnapshot

func (c *Client) GetDailyReportSnapshot(ctx context.Context, params *GetDailyReportSnapshotParams, reqEditors ...RequestEditorFn) (*http.Response, error)

GetDailyReportSnapshot Daily report snapshot

Returns a dated daily whale-activity report snapshot with source_range, snapshot.status, completeness, and reconciliation metadata. Report whale volume is local whale-alert activity volume, not provider lifetime trader volume.

Corresponds with GET /api/v1/reports/daily (the `GetDailyReportSnapshot` operationId).

func (*Client) GetEventReplaySince

func (c *Client) GetEventReplaySince(ctx context.Context, params *GetEventReplaySinceParams, reqEditors ...RequestEditorFn) (*http.Response, error)

GetEventReplaySince Replay public large-trade events

Returns durable public large-trade events strictly after an opaque cursor, in commit order: events are ordered by the position at which their write became visible to every reader (whale_alerts.inserted_xid), then by whale_alerts.id, and a page never reaches past the oldest write transaction still open when it was read. A trade whose id is lower than one already delivered but whose write finished later is therefore delivered on a later request instead of being skipped (#16180). This is a separate API-key contract from the browser/session /api/events/feed stream: browser-only and private alert, following, radar, and position patch events are excluded until they have a durable public outbox.

Corresponds with GET /api/v1/events/feed/since (the `GetEventReplaySince` operationId).

func (*Client) GetGame added in v0.4.0

func (c *Client) GetGame(ctx context.Context, eventSlug string, params *GetGameParams, reqEditors ...RequestEditorFn) (*http.Response, error)

GetGame Get one game

The same game object GET /api/v1/games returns, for one 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. A slug outside the published coverage returns 404, including a real Polymarket event in a sport this deployment does not serve; GET /api/v1/games names what is covered.

Corresponds with GET /api/v1/games/{event_slug} (the `GetGame` operationId).

func (*Client) GetHealth

func (c *Client) GetHealth(ctx context.Context, params *GetHealthParams, reqEditors ...RequestEditorFn) (*http.Response, error)

GetHealth Health check

Returns API health status. No authentication required. Limited to 120 requests per minute per IP.

Corresponds with GET /api/v1/health (the `GetHealth` operationId).

func (*Client) GetInsiderRadarFlag

func (c *Client) GetInsiderRadarFlag(ctx context.Context, id string, params *GetInsiderRadarFlagParams, reqEditors ...RequestEditorFn) (*http.Response, error)

GetInsiderRadarFlag Get insider radar flag by ID

Deprecated alias of GET /api/v1/suspicious-trades/{id} (2026-09-23), kept live with no retirement date; responses carry Deprecation and a Link rel="successor-version" to it. The envelope keeps object: radar_flag, so an integration that branches on it keeps working here. Returns one suspicious-trading radar flag by raw whale_alerts.id or the rf_-prefixed id emitted by list responses.

Corresponds with GET /api/v1/insider-radar/{id} (the `GetInsiderRadarFlag` operationId). Deprecated: this operation has been marked as deprecated upstream, but no `x-deprecated-reason` was set

func (*Client) GetLargeTrade added in v0.4.0

func (c *Client) GetLargeTrade(ctx context.Context, id string, params *GetLargeTradeParams, reqEditors ...RequestEditorFn) (*http.Response, error)

GetLargeTrade Get large trade by ID

Returns one large trade by raw whale_alerts.id or the wt_-prefixed id emitted by list and history responses.

Corresponds with GET /api/v1/large-trades/{id} (the `GetLargeTrade` operationId).

func (*Client) GetMarketCandles

func (c *Client) GetMarketCandles(ctx context.Context, conditionId string, params *GetMarketCandlesParams, reqEditors ...RequestEditorFn) (*http.Response, error)

GetMarketCandles Get market OHLC price candles

Provider-first bucketed OHLC price candles for a market's outcome tokens, derived from the stored token_price_snapshots series (the same series the market-detail chart renders; covers open and resolved markets). Because the stored data is daily, a 1d bucket typically carries one point so its open/high/low/close all equal that day's close; 1w aggregates real OHLC across the observed daily closes. No intraday fidelity is fabricated. Query field names and recognized values are URL-decoded; duplicate recognized fields use the last value and unknown fields are ignored. When both bounds are present, from must be less than or equal to to; malformed or inverted bounds answer 400.

Corresponds with GET /api/v1/market/{condition_id}/candles (the `GetMarketCandles` operationId).

func (*Client) GetMarketContextMarkdown added in v0.2.0

func (c *Client) GetMarketContextMarkdown(ctx context.Context, conditionId string, params *GetMarketContextMarkdownParams, reqEditors ...RequestEditorFn) (*http.Response, error)

GetMarketContextMarkdown Get market context (Markdown)

Authenticated, self-contained Polymarket market evidence document. Renders the same typed data as the market snapshot with trust included: identity, outcome labels and tokens, cached quotes, liquidity, live sports, and per-source freshness or unavailable reasons. Provider text is encoded as indented JSON data. Accepts raw or mkt_-prefixed condition IDs. Unknown markets return 404. No ETag or conditional requests; use the snapshot JSON route for those.

Corresponds with GET /api/v1/market/{condition_id}/context.md (the `GetMarketContextMarkdown` operationId).

func (*Client) GetMarketFlow added in v0.4.0

func (c *Client) GetMarketFlow(ctx context.Context, conditionId string, params *GetMarketFlowParams, reqEditors ...RequestEditorFn) (*http.Response, error)

GetMarketFlow Get a market's flow and top positions

Canonical since #16312; GET /api/v1/market/{condition_id}/intel is its deprecated alias and serves the same body under object market_intel. One market's flow and top positions: the signed flow of every tracked large trade in the window (net_flow_usd and its YES or NO direction), the large-trade count, gross buy and sell volumes, and the top five graded trader positions.

Corresponds with GET /api/v1/market/{condition_id}/flow (the `GetMarketFlow` operationId).

func (*Client) GetMarketHolders added in v0.2.0

func (c *Client) GetMarketHolders(ctx context.Context, conditionId string, params *GetMarketHoldersParams, reqEditors ...RequestEditorFn) (*http.Response, error)

GetMarketHolders List a market's graded holders

The graded holder roster of one market, the list a Pick of the Day shows for its market, for any Polymarket market: every S/A/B wallet with open shares on either outcome, from a complete provider holder scan, each with its shares, Polymarket's own currentValue for the leg, its grade, its win record in the market's category, and its badges. Both outcomes are listed; a wallet holding both is listed once on its net side. Ordered by current_value_usd DESC, then shares DESC, then address. The roster is computed at most once a minute per market and shared by every caller; a page is cut from that roster, so paging is cheap and `total` is exact. The route never widens past the graded cohort: `scan.wallet_count` reports every wallet the walk saw, graded or not. An incomplete, unstable or failed scan is a 503 with Retry-After, never a shorter list. A complete scan in which no S, A or B wallet holds either outcome is a 200 with an empty holders list and zero totals; retrying cannot change it. The cohort is S, A and B by the wallet's current grade (`traders.latest_grade`); a C, D, F or ungraded wallet is never listed here and appears only inside `scan.wallet_count`. A count here will not match GET /api/v1/positions for the same market, and the cohort is only one of three reasons: /positions reads the `wallet_positions` mirror rather than this live provider scan, and without a `wallet` its `min_size` defaults to 100 USD, so it drops the smaller legs this route keeps. Read a difference as all three, never as a grade count. This is current state and takes no as-of parameter: the roster is at most 60 s old over a provider walk at most 180 s old, and `scan.fetched_at` is the only timestamp on it. For a point-in-time roster, snapshot this route yourself on your own schedule; the one frozen roster the API serves is `display_holders` on GET /api/v1/pick-of-the-day, for that pick's market and backed side at publication.

Corresponds with GET /api/v1/market/{condition_id}/holders (the `GetMarketHolders` operationId).

func (*Client) GetMarketIntel

func (c *Client) GetMarketIntel(ctx context.Context, conditionId string, params *GetMarketIntelParams, reqEditors ...RequestEditorFn) (*http.Response, error)

GetMarketIntel Get market intelligence

Deprecated since #16312: use GET /api/v1/market/{condition_id}/flow, which serves the same body under object market_flow. This path stays live, keeps object market_intel, and answers with Deprecation and successor Link headers. One market's flow and top positions: the signed flow of every tracked large trade in the window (net_flow_usd and its YES or NO direction), the large-trade count, gross buy and sell volumes, and the top five graded trader positions.

Corresponds with GET /api/v1/market/{condition_id}/intel (the `GetMarketIntel` operationId). Deprecated: this operation has been marked as deprecated upstream, but no `x-deprecated-reason` was set

func (*Client) GetMarketSnapshot

func (c *Client) GetMarketSnapshot(ctx context.Context, conditionId string, params *GetMarketSnapshotParams, reqEditors ...RequestEditorFn) (*http.Response, error)

GetMarketSnapshot Get market live snapshot

Provider-first market card snapshot with canonical identity, outcome labels, cached top-of-book when available, liquidity, live sports context, and explicit freshness/unavailable states.

Corresponds with GET /api/v1/market/{condition_id}/snapshot (the `GetMarketSnapshot` operationId).

func (*Client) GetMonthlyReportSnapshot

func (c *Client) GetMonthlyReportSnapshot(ctx context.Context, params *GetMonthlyReportSnapshotParams, reqEditors ...RequestEditorFn) (*http.Response, error)

GetMonthlyReportSnapshot Monthly report snapshot

Returns a UTC monthly whale-activity report snapshot with source_range, completeness, and reconciliation metadata.

Corresponds with GET /api/v1/reports/monthly (the `GetMonthlyReportSnapshot` operationId).

func (*Client) GetPickOfTheDay

func (c *Client) GetPickOfTheDay(ctx context.Context, params *GetPickOfTheDayParams, reqEditors ...RequestEditorFn) (*http.Response, error)

GetPickOfTheDay Get today's Pick of the Day

Returns the published picks for the current product day. Pro tier.

`picks` holds up to ten ranked picks. Each pick carries the backed side, the pre-game price, the flat stake (`stake_usd`, 1000) and its return (`return_usd`; `return_per_100` keeps the literal $100 basis), the sharp-money holders, the grade, and a thesis. The price is frozen before kickoff. A prior day's pick never appears here; read the archive for it.

`scheduled_picks` lists same-day slots that are selected but not released yet. Each slot exposes only `pick_rank`, `release_at`, and `kickoff`.

When no pick is published for the current product day, the endpoint returns `404` with `error.code="not_found"` and `error.reason="pick_not_released"`. Branch on the reason; the code is frozen. The `404` is a schedule, not an outage.

Do not poll. Read `Retry-After` or `error.retry_at` and schedule one request for that instant. The `404` response below says how the instant is chosen.

Corresponds with GET /api/v1/pick-of-the-day (the `GetPickOfTheDay` operationId).

func (*Client) GetPickOfTheDayArchive

func (c *Client) GetPickOfTheDayArchive(ctx context.Context, params *GetPickOfTheDayArchiveParams, reqEditors ...RequestEditorFn) (*http.Response, error)

GetPickOfTheDayArchive Get the Pick of the Day track record

Returns every published pick with its outcome, unit score, closing-line value, and the rolling hit rate.

Resolved picks are public. A pending pick's backed side appears only for an authenticated Pro key.

Each row carries a CLV value or the reason it was not measured. Coverage divides measured rows by resolved rows published before kickoff. A post-kickoff publication is `not_applicable`.

Corresponds with GET /api/v1/pick-of-the-day/archive (the `GetPickOfTheDayArchive` operationId).

func (*Client) GetPickOfTheDayLedger added in v0.2.0

func (c *Client) GetPickOfTheDayLedger(ctx context.Context, params *GetPickOfTheDayLedgerParams, reqEditors ...RequestEditorFn) (*http.Response, error)

GetPickOfTheDayLedger Get the Pick of the Day commitment ledger

Returns the pre-game commitment for every published pick, so the public track record can be checked by someone who was not watching when the pick dropped.

One entry per (pick_date, pick_rank), ascending by pick_date then pick_rank, in one of three states. `sealed` is a live pick: the hash, the algorithm, the seal instant and the kickoff, and nothing that states a side or a price. `opened` is a settled pick: the nonce and the exact canonical payload the hash was taken over. `uncommitted` is a pick with no commitment -- published before the scheme existed, or one that reached kickoff unsealed -- named rather than omitted.

To verify an opened entry: serialize nothing. Take the bytes of the `payload` object exactly as received, append the `commitment_nonce` decoded from hex, and sha256 the result; it equals `commitment_hash`. The payload is canonical JSON -- keys sorted by UTF-8 byte value, no insignificant whitespace, decimals as strings at full stored precision, timestamps whole-second UTC with a literal Z -- and it is served byte for byte as it was hashed.

This is a proof contract, not the archive's display contract: nothing here is formatted for rendering, so an entry changes only when the pick does. A commitment is never written after kickoff and never rewritten by an outcome correction; `resolved_at` moving under an unchanged `commitment_hash` is a corrected market re-mapping an already-settled pick.

Corresponds with GET /api/v1/pick-of-the-day/ledger (the `GetPickOfTheDayLedger` operationId).

func (*Client) GetPlatforms

func (c *Client) GetPlatforms(ctx context.Context, params *GetPlatformsParams, reqEditors ...RequestEditorFn) (*http.Response, error)

GetPlatforms Get platform capability matrix

Deprecated since #16315: use GET /api/v1/coverage, which serves the same body. This path stays live and answers with Deprecation and successor Link headers. Unauthenticated discovery endpoint that declares which V1 data surfaces the API serves for Polymarket, the one venue it covers. Every capability reports supported.

Corresponds with GET /api/v1/platforms (the `GetPlatforms` operationId). Deprecated: this operation has been marked as deprecated upstream, but no `x-deprecated-reason` was set

func (*Client) GetPositionTimeline

func (c *Client) GetPositionTimeline(ctx context.Context, address string, params *GetPositionTimelineParams, reqEditors ...RequestEditorFn) (*http.Response, error)

GetPositionTimeline Get a trader's position timeline for one market

Returns stored Polymarket fills for one tracked trader in one market, newest first, with outcome-specific running_amount and running_avg_price including earlier stored fills before pagination. The {address} segment accepts the same identity shapes as the plural alias: wallet, username, trd_-prefixed trader id, bare integer traders.id, or @username, resolved with precedence @username -> wallet -> trd_ -> integer -> username. A leading @ resolves the rest as a username only, which is how to reach an all-digit username that the integer rule reads as an id. Only HOT and WARM traders are served; others return 404. The cumulative buy-weighted fill average is unchanged by sells. Split, merge, redemption and neg-risk activity are excluded; totals are not complete holdings or provider current-position avgPrice. Cursor-paginated; values stay stable across page sizes/cursors for unchanged source history.

Corresponds with GET /api/v1/trader/{address}/position-timeline (the `GetPositionTimeline` operationId).

func (*Client) GetPositionTimelineById

func (c *Client) GetPositionTimelineById(ctx context.Context, trader string, params *GetPositionTimelineByIdParams, reqEditors ...RequestEditorFn) (*http.Response, error)

GetPositionTimelineById Get a trader's position timeline (unified identity resolver)

Unified trader-timeline route (#4975). {trader} accepts all five identity shapes - 0x... wallet, username, trd_-prefixed trader id, bare integer id, and @username (a username lookup only, for all-digit usernames) - resolved by the single shared trader-identity resolver. Returns stored Polymarket fills for one tracked trader in one market, newest first, with server-computed running_amount and running_avg_price. Only HOT and WARM tier traders are tracked; other traders return 404. Response payload matches the singular GET /api/v1/trader/{address}/position-timeline route for the same (trader, market), except for the per-request meta.request_id. The prior integer-id-only variant is preserved: the same path now accepts every identity shape.

Corresponds with GET /api/v1/traders/{trader}/position-timeline (the `GetPositionTimelineById` operationId).

func (*Client) GetReports

func (c *Client) GetReports(ctx context.Context, params *GetReportsParams, reqEditors ...RequestEditorFn) (*http.Response, error)

GetReports Unified report snapshot (granularity selector)

Unified convenience route (#4975) that consolidates the three singular report routes. Dispatches to the exact per-granularity cap (daily 50, weekly 100, monthly 200) and date window the legacy /api/v1/reports/{daily,weekly,monthly} routes use, so the response body is byte-identical to the matching legacy route for the same period. An ISO weekly period is a durable canonical snapshot; an explicit weekly from,to pair is an exact ephemeral range limited to 31 inclusive UTC days and never creates a persisted snapshot identity. A wider explicit range returns 400 invalid_query. The three legacy routes stay live. Also reachable via the MCP get_report selector.

Corresponds with GET /api/v1/reports (the `GetReports` operationId).

func (*Client) GetStream

func (c *Client) GetStream(ctx context.Context, params *GetStreamParams, reqEditors ...RequestEditorFn) (*http.Response, error)

GetStream Resumable real-time event stream (SSE)

Server-Sent Events stream of the live feed envelopes the platform already broadcasts (whale-trade pulses and other public/Pro feed events). Forwards the same backend-owned envelope shape as the internal feed; no provider data is recomputed. Authenticated via the oxi_sk Bearer key like every other /api/v1 endpoint, and limited to a small number of concurrent connections per API key and a cluster-wide ceiling across all keys (HTTP 429 with Retry-After when either cap is exceeded; HTTP 503 with Retry-After if a required Redis service is briefly unavailable). Each delivered frame carries an SSE id from one cluster-shared sequence that remains valid across backend replicas and process restarts. Reconnect with the Last-Event-ID header (or the last_event_id / seq query fallback) to replay the missed window before resuming live. When the requested resume point is older than the retained window, ahead of the current sequence, separated from live delivery by an uncovered gap, or the server's sequence counter restarts mid-stream (a completeness.status of truncated, lagged, or reset), the stream emits a resync marker event (event: resync) instead of silently skipping frames. Idle connections receive periodic ': keep-alive' comment lines. This is a long-lived response: keep the connection open and read frames as they arrive. Authorization is re-checked for as long as the stream is open: every 30 seconds the server re-resolves the key the stream was opened with, so a key that is revoked, expired or rotated, or an account that is deleted, locked or no longer subscribed, ends the stream within 40 seconds (30 seconds plus the credential cache's 10-second bound) with one terminal 'event: error' frame and then closes the connection. The frame's JSON is { type: 'error', error: <the same error object a reconnect is answered with: code, message, doc_url, reason, retry_at>, retry: <boolean> }; retry is false for every credential and account refusal (a reconnect is refused with the same 401, 402, 403 or 423), and true only when the credential store stopped answering (code database_unavailable, after 90 seconds without a confirmed check), in which case reconnect after the error's retry_at with Last-Event-ID set to the frame's id to resume.

Corresponds with GET /api/v1/stream (the `GetStream` operationId).

func (*Client) GetSuspiciousTrade added in v0.4.0

func (c *Client) GetSuspiciousTrade(ctx context.Context, id string, params *GetSuspiciousTradeParams, reqEditors ...RequestEditorFn) (*http.Response, error)

GetSuspiciousTrade Get suspicious trade by ID

Returns one suspicious trade by raw whale_alerts.id or the rf_-prefixed id emitted by list responses. Canonical since 2026-09-23; GET /api/v1/insider-radar/{id} is its deprecated alias and keeps answering object: radar_flag.

Corresponds with GET /api/v1/suspicious-trades/{id} (the `GetSuspiciousTrade` operationId).

func (*Client) GetTrader

func (c *Client) GetTrader(ctx context.Context, address string, params *GetTraderParams, reqEditors ...RequestEditorFn) (*http.Response, error)

GetTrader Get trader

Returns a trader's grade (S through F; ranked about 95% by realized profit, with calibration, track record, and consistency as a tie-breaker and proven-trader guardrails), P&L, win rate, and optional strategy/category data. The path accepts either an Ethereum wallet address, a known trader username, or a trd_-prefixed trader ID emitted by this API. A wallet address this API does not track yet returns 200 with sync_status "unknown" instead of 404, so it can be polled. A value that is not a wallet address and matches no username or trader ID this API knows returns 404 not_found with error.param address; it is never echoed back as a trader address. The additive `pnl.exact.realized` and `stats.exact.total_volume` fields carry decimal strings from verified source atoms with unit, scale and basis metadata; parse them with decimal-safe arithmetic and keep the existing numeric twins for display.

Corresponds with GET /api/v1/trader/{address} (the `GetTrader` operationId).

func (*Client) GetTraderCategoryRecords added in v0.2.0

func (c *Client) GetTraderCategoryRecords(ctx context.Context, address string, params *GetTraderCategoryRecordsParams, reqEditors ...RequestEditorFn) (*http.Response, error)

GetTraderCategoryRecords Get trader category win records

Returns one wallet's win record in every canonical category it has a settled market in: wins, decided (wins plus losses) and the rate, per category, busiest category first. These are the same counts the Pick of the Day holder chips carry. The Esports record also carries games: the wallet's record in each esports title it has a settled market in (LoL, CS2, Dota 2, Valorant, ...), the same per-game record the holder chips and GET /api/v1/market/{condition_id}/holders name in category_win_rate_game, with the same counts, floor and status rule; the Esports row itself stays the whole bucket, which is what a chip falls back to when a game record is thin. The basis is every settled market at any position size, which is NOT the basis of category_strengths on GET /api/v1/trader/{address}?expand=categories: that breakdown keeps the 20 USD notional floor and the entry-price rule its ranks depend on, so the two legitimately differ, in both directions. Measured on production 2026-09-22 over the 122,497 wallet-category pairs with at least 20 decided markets on both bases: the floored rate was higher in 56.5% of pairs, lower in 34.5% and equal in 9.0%, median +0.6 points, p10 -4.6, p90 +9.8, and 14.0% of pairs differ by 10 points or more. Neither rate corrects the other. The difference is not only small positions: on a 1-in-250 wallet sample the same day, admitted markets won 56.6% while markets dropped by the notional floor alone won 45.2% and markets dropped by the entry-price rule alone won 48.7%. The two tables also run on different clocks, this one rebuilt daily and that breakdown updated incrementally, so a same-day read can differ on timing alone. A category or game with fewer than min_decided_for_win_rate decided markets keeps its counts and returns win_rate null with status not_enough_data, so a caller can apply its own sample rule. A category the wallet has no settled market in is omitted entirely, and so is a game: an absent entry means no record, never a 0% record. A resolved trader with no settled market returns an empty records array (HTTP 200); an unknown address returns 404.

Corresponds with GET /api/v1/trader/{address}/categories (the `GetTraderCategoryRecords` operationId).

func (*Client) GetTraderContext

func (c *Client) GetTraderContext(ctx context.Context, address string, params *GetTraderContextParams, reqEditors ...RequestEditorFn) (*http.Response, error)

GetTraderContext Get trader context (JSON)

Returns a single structured context object for one trader: the full trader profile (same shape as GET /api/v1/trader/{address}) plus a position_summary (sync coverage and realized/unrealized P&L rollups, with an as_of open-position freshness clock), the data_as_of freshness timestamp (the open-position data's latest /positions snapshot, else last completed sync; the snapshot advances only open positions, so resolved counts and win rate still date to the last full sync; native realized P&L follows its accounting snapshot), and a freshness_note describing the point-in-time snapshot semantics. The path accepts an Ethereum wallet address (0x...), a known trader username, or a trd_-prefixed trader ID emitted by this API. position_summary is omitted when the trader is not in the local database or native net economics is unavailable; realized fields remain numeric when present; a wallet address this API does not track yet returns 200 with sync_status 'unknown' on the nested trader (no 404), while a value that is not a wallet address and matches no username or trader ID this API knows returns 404 not_found with error.param address. Append .md to the path for the Markdown rendering.

Corresponds with GET /api/v1/trader/{address}/context (the `GetTraderContext` operationId).

func (*Client) GetTraderContextMarkdown

func (c *Client) GetTraderContextMarkdown(ctx context.Context, address string, params *GetTraderContextMarkdownParams, reqEditors ...RequestEditorFn) (*http.Response, error)

GetTraderContextMarkdown Get trader context (Markdown)

Returns a single human- and LLM-readable Markdown briefing for one trader: identity, grade, P&L, position coverage, and freshness. The path accepts an Ethereum wallet address (0x...), a known trader username, or a trd_-prefixed trader ID emitted by this API. A wallet address this API does not track yet still returns 200 with a degraded 'not yet synced' document (no 404). A value that is not a wallet address and matches no username or trader ID this API knows returns 404 not_found with error.param address, as the JSON error envelope. The Markdown variant does not emit an ETag and does not support conditional requests; use the JSON variant (drop the .md suffix) for ETag/If-None-Match handling.

Corresponds with GET /api/v1/trader/{address}/context.md (the `GetTraderContextMarkdown` operationId).

func (*Client) GetTraderExportSnapshot

func (c *Client) GetTraderExportSnapshot(ctx context.Context, address string, params *GetTraderExportSnapshotParams, reqEditors ...RequestEditorFn) (*http.Response, error)

GetTraderExportSnapshot Trader export snapshot metadata

Returns export source-range, completeness, volume reconciliation, row-count estimate, and large-export policy for one trader. To download the full dataset programmatically, POST to this same path to submit an async export job (json | ndjson | csv), then poll the status route and follow the download route once ready.

Corresponds with GET /api/v1/trader/{address}/export (the `GetTraderExportSnapshot` operationId).

func (*Client) GetTraderExportStatus

func (c *Client) GetTraderExportStatus(ctx context.Context, address string, params *GetTraderExportStatusParams, reqEditors ...RequestEditorFn) (*http.Response, error)

GetTraderExportStatus Poll a trader export job

Returns the job resource for a submitted export: status (queued | running | cancel_requested | reconcile_required | ready | failed | expired | cancelled), terminal, next_action and poll_after_s, the lifecycle timestamps, the retention window (expires_at) and, once the file is written, data_as_of and the artifact identity. A ready job past expires_at reads expired; a queued or reconciling job past expires_at reads failed. A running job its owner cancelled reads cancel_requested until the worker stops, then cancelled. failed, cancelled and expired jobs stay readable for 48 hours, then 404.

Corresponds with GET /api/v1/trader/{address}/export/status (the `GetTraderExportStatus` operationId).

func (*Client) GetTraderGradeAt added in v0.4.0

func (c *Client) GetTraderGradeAt(ctx context.Context, address string, params *GetTraderGradeAtParams, reqEditors ...RequestEditorFn) (*http.Response, error)

GetTraderGradeAt Get a trader grade proven visible at a past instant

Reads one trader's recorded grade at as_of from prospective visibility evidence. Before the first recorded observation, after deletion, or during a grade-transition gap, status is unknown and grade is null; a recorded ungraded trader instead has status ungraded. available_from is the first proven observation for this trader, not a claim that earlier grades can be reconstructed. observed_at is when the grade writer began the transition and published_by is the later confirmation that the row was committed, not an exact commit time. Older observations have null model_version, model_build_sha and source_observed_by; do not substitute a current grade or a dated ranking row. The requested event time, publication bounds and model provenance are separate. Use a grade only when status is graded. This is additive; the current-grade trader and leaderboard operations do not change.

Corresponds with GET /api/v1/trader/{address}/grade-at (the `GetTraderGradeAt` operationId).

func (*Client) GetTraderPnl

func (c *Client) GetTraderPnl(ctx context.Context, address string, params *GetTraderPnlParams, reqEditors ...RequestEditorFn) (*http.Response, error)

GetTraderPnl Get trader P&L time series

Returns a trader's daily P&L time series and pre-derived stats from the precomputed daily_pnl read model: entries (daily cumulative P&L), period stats (all/90d/30d/7d), monthly aggregation, per-year totals, and the drawdown series. Reads the refreshed read model, not a per-request equity replay. A resolved trader with no daily P&L returns an empty structured object (HTTP 200); an unknown address returns 404. Optional from/to and sections bound what comes back: from/to clip the two daily series (entries, drawdown) to an inclusive UTC date window, and sections names which of the five sections the body carries. A request that sends none of the three receives the whole object exactly as before, down to the ETag. A body built with any of them carries data.view, which names the bounds, the sections applied, the size of the full series and the last daily point before the window; a section the request excluded is absent from data, not null or empty. stats, monthly and year_totals keep their full-period definitions whatever the window says, so an economic value never changes meaning because a chart asked for seven days.

Corresponds with GET /api/v1/trader/{address}/pnl (the `GetTraderPnl` operationId).

func (*Client) GetUsage

func (c *Client) GetUsage(ctx context.Context, params *GetUsageParams, reqEditors ...RequestEditorFn) (*http.Response, error)

GetUsage Inspect current API usage without spending primary request quota

Returns the authenticated caller sliding-window request budget, UTC-day usage and monthly quota. This control-plane endpoint remains available for a valid credential after paid data access lapses and does not increment the primary Redis rate-limit counter, monthly quota or API usage table; it shares a separate 100 reads/minute per-user inspection bucket with GET /api/v1/me. UTC-day totals use finalized quarter-hour rollups plus the disjoint raw interval through request time; unavailable rollup progress returns an error.

Corresponds with GET /api/v1/usage (the `GetUsage` operationId).

func (*Client) GetWebhook

func (c *Client) GetWebhook(ctx context.Context, id int64, params *GetWebhookParams, reqEditors ...RequestEditorFn) (*http.Response, error)

GetWebhook Get one builder webhook destination

Returns one webhook destination owned by the authenticated API key user.

Corresponds with GET /api/v1/webhooks/{id} (the `GetWebhook` operationId).

func (*Client) GetWeeklyReportSnapshot

func (c *Client) GetWeeklyReportSnapshot(ctx context.Context, params *GetWeeklyReportSnapshotParams, reqEditors ...RequestEditorFn) (*http.Response, error)

GetWeeklyReportSnapshot Weekly report snapshot

Returns a weekly whale-activity report snapshot. Pass an ISO YYYY-WW token for a durable canonical snapshot, or an exact from/to UTC range of at most 31 inclusive days for an ephemeral response. The response identifies closed ranges as final and current ranges as rolling.

Corresponds with GET /api/v1/reports/weekly (the `GetWeeklyReportSnapshot` operationId).

func (*Client) GetWhaleDatasetStatus added in v0.4.0

func (c *Client) GetWhaleDatasetStatus(ctx context.Context, jobId int64, reqEditors ...RequestEditorFn) (*http.Response, error)

GetWhaleDatasetStatus Read a whale dataset job

Read queued, running, cancel_requested, ready, failed, reconcile_required, expired or cancelled. Poll only while next_action is poll, after poll_after_s. Ready manifests contain count, content and compressed SHA-256, schema, filters, source, horizon, expiry and replay continuation. Deltas do not retain the finite time filter and can repeat rows; deduplicate by wt_ ID (payload.whale_alert_id when not expanded). This is an insertion feed, not update/delete CDC. Paid export scope; jobs are private to the credential owner. Shares the 20/day owner export quota and fair worker admission with trader exports; datasets also have a combined 5/hour quota. Three worker attempts, 24-hour retention, no partial download; cancellation consumes its reservation. Coverage is whale alerts, not all provider fills.

Corresponds with GET /api/v1/datasets/whale-trades/{job_id} (the `GetWhaleDatasetStatus` operationId).

func (*Client) GetWhaleTrade

func (c *Client) GetWhaleTrade(ctx context.Context, id string, params *GetWhaleTradeParams, reqEditors ...RequestEditorFn) (*http.Response, error)

GetWhaleTrade Get whale trade by ID

Returns one whale trade by raw whale_alerts.id or the wt_-prefixed id emitted by list and history responses. Deprecated alias of GET /api/v1/large-trades/{id}, kept live and never removed (#16304); every response carries `Deprecation: @1790047200` (RFC 9745, 2026-09-22T03:20:00Z) and a `Link` to the successor (`rel="successor-version"`) and to the versioning policy (`rel="deprecation"`). No `Sunset` header is sent because no removal is planned.

Corresponds with GET /api/v1/whale-trades/{id} (the `GetWhaleTrade` operationId). Deprecated: this operation has been marked as deprecated upstream, but no `x-deprecated-reason` was set

func (*Client) ListGames added in v0.4.0

func (c *Client) ListGames(ctx context.Context, params *ListGamesParams, reqEditors ...RequestEditorFn) (*http.Response, error)

ListGames List covered games

One coherent game view per row: both sides with their provider ids and live scores, the UTC kickoff, the provider's own status, the esports series format, and every linked Polymarket market with its condition id and outcome token ids. Built from the same provider-first live and upcoming projections the site's sports boards use, so a request pays no provider fan-out of its own. Ordered by kickoff, then by event_slug; games whose kickoff the provider has not published sort last. coverage names the sports and leagues this deployment serves and any scope whose source was unavailable for the read, so an empty page is never ambiguous. A sport or status outside the published vocabulary returns an empty page rather than a 400. Carries the board's existing competitor-bound provider moneyline price state by default, with an observation clock and explicit incomplete or invalid state. It does not fetch another provider endpoint. Sharp-money splits and holder identities remain on their own gated routes.

Corresponds with GET /api/v1/games (the `ListGames` operationId).

func (*Client) ListInsiderRadar

func (c *Client) ListInsiderRadar(ctx context.Context, params *ListInsiderRadarParams, reqEditors ...RequestEditorFn) (*http.Response, error)

ListInsiderRadar Get insider radar flags

Deprecated alias of GET /api/v1/suspicious-trades (2026-09-23), kept live with no retirement date; responses carry Deprecation and a Link rel="successor-version" to it. Stored trades whose recorded suspicion score meets the live flag threshold. Evidence contains the scorer's stored signals. Cursor-paginated by suspicion score. mode=live (default) uses fresh cached pages; mode=stable pins pagination to one published scoring generation and returns cursor_expired when scores or filters change.

Corresponds with GET /api/v1/insider-radar (the `ListInsiderRadar` operationId). Deprecated: this operation has been marked as deprecated upstream, but no `x-deprecated-reason` was set

func (*Client) ListLargePositions

func (c *Client) ListLargePositions(ctx context.Context, params *ListLargePositionsParams, reqEditors ...RequestEditorFn) (*http.Response, error)

ListLargePositions List large positions

Returns the largest current open positions from graded traders, value-descending, with opaque cursor pagination. This is a change-detection feed, not a holder list: a row needs a current value of at least 50,000 USD and a live detection in the last 24 hours, so a wallet that holds a market without moving is not listed. For every graded holder of one market use GET /api/v1/market/{condition_id}/holders. Polymarket-only by design: the large-positions scanner filters platform = 'polymarket' (backend/crates/large-positions/src/scanner.rs), so only Polymarket rows are scanned and an unknown condition_id filter returns an empty list (never fabricated rows). The teaser cap that the internal product UI applies to anonymous viewers does not apply here: the API key already proves an active Pro subscription (wire tier `insider`), so authed API callers get full access.

Corresponds with GET /api/v1/large-positions (the `ListLargePositions` operationId).

func (*Client) ListLargeTradeCounterpartyExecutions added in v0.4.0

func (c *Client) ListLargeTradeCounterpartyExecutions(ctx context.Context, id string, params *ListLargeTradeCounterpartyExecutionsParams, reqEditors ...RequestEditorFn) (*http.Response, error)

ListLargeTradeCounterpartyExecutions Page counterparty executions

Returns a bounded execution page from the immutable snapshot emitted by large-trade detail. A stale or changed snapshot returns a cursor-expired error so clients restart from detail.

Corresponds with GET /api/v1/large-trades/{id}/counterparties/executions (the `ListLargeTradeCounterpartyExecutions` operationId).

func (*Client) ListLargeTradeCounterpartyMakers added in v0.4.0

func (c *Client) ListLargeTradeCounterpartyMakers(ctx context.Context, id string, executionId string, params *ListLargeTradeCounterpartyMakersParams, reqEditors ...RequestEditorFn) (*http.Response, error)

ListLargeTradeCounterpartyMakers Page maker counterparties

Returns a bounded maker-wallet page for one exact execution. Percentages keep the complete execution denominator across pages.

Corresponds with GET /api/v1/large-trades/{id}/counterparties/executions/{execution_id}/makers (the `ListLargeTradeCounterpartyMakers` operationId).

func (*Client) ListLargeTradeHistory added in v0.4.0

func (c *Client) ListLargeTradeHistory(ctx context.Context, params *ListLargeTradeHistoryParams, reqEditors ...RequestEditorFn) (*http.Response, error)

ListLargeTradeHistory Replay historical large trades

Returns historical large trades from local whale_alerts rows, not request-time provider fetches. Filter by condition_id, trader, category, minimum grade, persisted suspicion, platform, and RFC3339 from/to windows. All filters are pushed into SQL before LIMIT, every request uses SQL-backed limit + 1 pagination, and results are ordered newest first by traded_at desc, id desc. Metadata exposes local_replay source and best_effort completeness. POINT IN TIME: signal_score, trader.grade and the min_grade filter carry today's values on every row however old, so a backtest that selects by them selects wallets on what they did after the trade. The point-in-time fields are recorded_signal_score (from 2026-08-03T11:59Z; null before, and never backfilled, because the trader statistics it reads at insert were not kept for older rows) and trader.grade_at_trade with trader.grade_at_trade_status (from 2026-09-19T23:00Z; unknown before). CAPTURE RULES changed over the archive's life: rows before 2026-02-02 are sparse (at most a few hundred a month); from 2026-02-02 the floor was 3,000 USD (1.4% of rows through 2026-07-05 are smaller) and trades at any price were kept; from 2026-07-06 a trade is kept at 10,000 USD or more (1,000 USD in earnings markets) and only when priced below 0.97 (0.99 in earnings markets). Pass min_size=10000 for one size rule across the whole range; monthly row counts still follow the sports calendar. Until 2026-07-17 one match could be stored twice, once per wallet: from 2026-05-01 to 2026-07-17, 27.7% of rows at 10,000 USD or more share a transaction and market with another stored wallet, almost always a Yes buyer and a No buyer filled against each other. From 2026-07-18 a row is the taker's side only. Before 2026-05 the transaction hash is mostly absent, so the share cannot be measured there. From 2026-09-23 a fill must ALSO be at least 0.1% of its market's recorded traded volume, Polymarket's own share count, so a $10,000 print that lands in a market which has already traded tens of millions of shares is no longer kept; rows written before that date were not re-filtered. The response adds a top-level `data_quality` object beside `data`, grouping alert, trade, trader, ranking, market, and volume fields by their database writer. `whale_alerts.inserted_xid` is reported as unknown because it is a transaction identifier rather than a timestamp. Its stored clocks are part of the ETag; `meta` continues to hold transport cache facts.

Corresponds with GET /api/v1/large-trades/history (the `ListLargeTradeHistory` operationId).

func (*Client) ListLargeTrades added in v0.4.0

func (c *Client) ListLargeTrades(ctx context.Context, params *ListLargeTradesParams, reqEditors ...RequestEditorFn) (*http.Response, error)

ListLargeTrades List large trades

Returns recent large trades with signal scoring and persisted suspicion facts. Filter by size, category, trader grade, or persisted suspicion. Filters are applied before pagination, and every request uses SQL-backed limit + 1 pagination so has_more and next_cursor reflect the filtered result set. Cursor-paginated, newest first. Market categories come from provider-backed market_canonical identity. The response adds a top-level `data_quality` object beside `data`, grouping alert, trade, trader, ranking, market, and volume fields by their database writer. `whale_alerts.inserted_xid` is reported as unknown because it is a transaction identifier rather than a timestamp. Its stored clocks are part of the ETag; `meta` continues to hold transport cache facts. Pass since to poll for new trades: the answer holds only the trades recorded after the one you name, and with If-None-Match a poll that finds none is 304 with an empty body.

Corresponds with GET /api/v1/large-trades (the `ListLargeTrades` operationId).

func (*Client) ListLeaderboard

func (c *Client) ListLeaderboard(ctx context.Context, params *ListLeaderboardParams, reqEditors ...RequestEditorFn) (*http.Response, error)

ListLeaderboard Get trader leaderboard

Returns ranked traders (grades S/A/B) sorted by score descending. Supports cursor pagination and optional category/strategy filters.

Corresponds with GET /api/v1/leaderboard (the `ListLeaderboard` operationId).

func (*Client) ListPositions

func (c *Client) ListPositions(ctx context.Context, params *ListPositionsParams, reqEditors ...RequestEditorFn) (*http.Response, error)

ListPositions List current positions (positions-board feed)

Returns the current positions-board feed backed by the wallet_positions mirror. Ordered by current_value_usd DESC with deterministic (wallet, condition_id, outcome_index) tiebreakers. Pre-reconcile rows (current_value_usd IS NULL) are excluded. Cursor-paginated. Every filter pushes into SQL. Deep cursor pages cost the same as the first page: the value bounds and the cursor are index conditions, so a page never rescans the feed from the top. With wallet, the same feed is read for one wallet or a book of up to 25 wallets from each wallet's own ordered index range, so the pages are that wallet's complete reconciled binary open positions and the cost is the page, never the board. min_size defaults to 100 on the board read, so a request with no wallet and no min_size drops positions valued under 100 USD; with wallet it defaults to 0 instead. Send min_size=0 to include every reconciled position. What a wallet read does not return: positions with shares at 0 (closed), rows the reconciler has not valued yet (current_value_usd IS NULL), and non-binary outcomes; per-row last_reconciled_at and freshness say how old each valuation is. Each row also carries additive `exact` source atoms as decimal strings with unit, scale and basis metadata; parse those values with decimal-safe arithmetic and do not reconstruct them from the display-safe numeric fields. The response adds a top-level `data_quality` object beside `data`, with positions, trader, and market groups owned by `wallet_positions.last_reconciled_at|updated_at`, `traders.last_synced`, and `market_canonical.last_refreshed_at`. Its stored clocks are part of the ETag; `meta` continues to hold transport cache facts.

Corresponds with GET /api/v1/positions (the `ListPositions` operationId).

func (*Client) ListPreGameSideObservations added in v0.4.0

func (c *Client) ListPreGameSideObservations(ctx context.Context, params *ListPreGameSideObservationsParams, reqEditors ...RequestEditorFn) (*http.Response, error)

ListPreGameSideObservations List observation-only pre-game side cohorts

Canonical since #16310; GET /api/v1/sports-edge-observations is its deprecated alias and serves the same body. Pro-tier. Measures three explicitly observation-only Polymarket sports cohorts without changing or feeding GET /api/v1/sports/pre-game-sides: wider_holder measures pre-game holder piles outside the funded route's exact raw signals admission, including recent-flow rows rejected by its event, bucket, or total caps; in_play admits provider-confirmed live games and fails closed when the provider live-board snapshot is stale or unavailable or holder/directional evidence is stale or unavailable; emerging_pile is an additive post-compute projection of wider_holder rows with finite sharp_pct in [0.75, 0.85), holder_scan_complete=true, and a kickoff after its pinned projection cutoff. emerging_pile overlaps wider_holder, remains attributed to that source terminal and denominator, and is not holder-arrival history. Every row carries observation_only=true, provider/holder freshness and completeness fields, and the response carries a required snapshot-wide operational/unknown-completeness degraded boolean plus an accountable per-sport funnel over a closed 25-value terminal-reason vocabulary. Omitted or blank category selects all 14 registered observation sport buckets, including Table Tennis and Pickleball; those two remain outside the funded sports projection. All category and all-sports cache scopes share one global observation provider-work admission, so distinct scope keys cannot multiply concurrent provider fanout. One absolute ~25s compute deadline covers cache coordination, board/universe and primary-signals membership reads, holder cache/provider work, price/metadata evaluation, and directional reads, leaving ~5s below the public router timeout for funnel reconciliation, cleanup, and response transport. A shared pre-holder stage deadline jointly bounds those database reads and board reconciliation to the smaller of 12s or half of the absolute budget remaining when that stage starts, preserving holder/post-holder opportunity; board reads use bounded fair waves and cold holder admission gives each represented canonical sport one row before any sport repeats. A request that finds its scope's refresh in flight waits for that snapshot, and a scope refresh waits for another scope's global provider-work admission while at least ~15s of the absolute deadline remain. Absolute deadline exhaustion before a usable cache, provider-work admission still held at that ~15s bound, an in-flight refresh that ends without publishing while another waiting request takes it over, or pre-holder stage expiry before a usable stored universe or primary-signals membership result returns 503 with error.reason=read_model_warming. Category-resolution SQL errors, Redis coordination failures, and primary-signals membership query failures return 500 internal_error instead. With no usable stored universe, a replica-side observation-universe refresh failure (a recovery conflict, its statement timeout, a busy pool, or a replica marked down) returns the same 503 read_model_warming; any other observation-universe SQL error, or an invalid compact result, still returns 500 internal_error. Once a usable universe exists, later operational or unknown-completeness board, holder, or price/metadata failures are retained as explicit terminal reasons in a degraded 200 response with degraded=true: 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 an attempted holder-provider failure, and holder_deadline_unavailable is holder-stage deadline exhaustion. Directional incompleteness is cohort-specific: a wider_holder row remains emitted with terminal wider_holder_emitted and directional_status=unavailable, while an in_play row fails closed with terminal in_play_directional_unavailable. capacity_limited records intentional bounded provider-work admission in the funnel and does not by itself set degraded=true. Healthy wider_holder requests may reuse a snapshot for ~180s; healthy emerging_pile requests may use the same snapshot. in_play never serves a cached observation snapshot older than ~30s, and degraded snapshots use ~30s. The ETag is a weak semantic validator over the stable page payload, including next_cursor page position; request-specific meta excluded; the opaque emerging_pile projection cutoff in next_cursor is not itself a validator input. Rows carry the canonical field names side, backing_score and side_share; the older piled_side, conviction_score and smart_score keys carry the same values and stay on the wire.

Corresponds with GET /api/v1/sports/pre-game-side-observations (the `ListPreGameSideObservations` operationId).

func (*Client) ListPreGameSides added in v0.4.0

func (c *Client) ListPreGameSides(ctx context.Context, params *ListPreGameSidesParams, reqEditors ...RequestEditorFn) (*http.Response, error)

ListPreGameSides List upcoming games ranked by the side profitable wallets hold

Canonical since #16310; GET /api/v1/sports-edge-signals is its deprecated alias and serves the same body. Pro-tier. Ranked list of upcoming pre-game sports markets (moneyline + props) where graded (S/A/B) sharp money is piled on one side, each row carrying signal_created_at (the UTC time its immutable snapshot was computed), the piled side, its grade distribution, kickoff, piled-side Polymarket CLOB token id, and required shadow-only category_skill evidence. signal_created_at is not provider market creation time or request time. Eligibility and ranking remain the funded FLOW/HOLDER contract; category skill cannot change membership, order, rank, cursor, routing, or sizing. meta exposes explicit category source/model/status plus independently computed pre/post SHA-256 base-vector hashes that must match. Served from a shared server-side snapshot cache (healthy TTL ~180s, degraded ~30s) computed once per category at the maximum 48h horizon and filtered at request time; the cursor pins to that snapshot and a stale cursor is rejected. Polymarket only; source coverage is partial first-observed post-launch Goldsky primary taker BUY fills admitted by the canonical whale-alert thresholds, never reconstructed history. Deliberately not the editorial Pick of the Day ranker. Rows carry the canonical field names side, ranked_at, backing_score and side_share; the older piled_side, signal_created_at, conviction_score and smart_score keys carry the same values and stay on the wire.

Corresponds with GET /api/v1/sports/pre-game-sides (the `ListPreGameSides` operationId).

func (*Client) ListSharpMoneyFlows

func (c *Client) ListSharpMoneyFlows(ctx context.Context, params *ListSharpMoneyFlowsParams, reqEditors ...RequestEditorFn) (*http.Response, error)

ListSharpMoneyFlows List ranked sharp-money flows

Canonical path for ranked sharp-money flows; /api/v1/markets/smart-money-flows remains live as a deprecated byte-identical alias of it. Ranks markets by absolute net S/A/B-grade whale flow over a requested timeframe. Use this discovery endpoint to answer where sharp money is flowing before drilling into a specific market with /api/v1/market/{condition_id}/flow. Pagination is anchored by an opaque cursor carrying the first-page as_of timestamp, normalized effective filters, ranking revision and aggregate collection revision; a changed filter or collection returns `cursor_expired` so callers request the first page again.

Corresponds with GET /api/v1/markets/sharp-money-flows (the `ListSharpMoneyFlows` operationId).

func (*Client) ListSmartMoneyFlows

func (c *Client) ListSmartMoneyFlows(ctx context.Context, params *ListSmartMoneyFlowsParams, reqEditors ...RequestEditorFn) (*http.Response, error)

ListSmartMoneyFlows List ranked sharp-money flows (deprecated alias)

Ranks markets by absolute net S/A/B-grade whale flow over a requested timeframe. Use this discovery endpoint to answer where sharp money is flowing before drilling into a specific market with /api/v1/market/{condition_id}/flow. Pagination is anchored by an opaque cursor carrying the first-page as_of timestamp, normalized effective filters, ranking revision and aggregate collection revision; a changed filter or collection returns `cursor_expired` so callers request the first page again. Deprecated alias of GET /api/v1/markets/sharp-money-flows, kept live and never removed; every response carries `Deprecation: @1783276950` (RFC 9745, 2026-07-05T18:42:30Z) and a `Link` to the successor (`rel="successor-version"`) and to the versioning policy (`rel="deprecation"`). No `Sunset` header is sent because no removal is planned.

Corresponds with GET /api/v1/markets/smart-money-flows (the `ListSmartMoneyFlows` operationId). Deprecated: this operation has been marked as deprecated upstream, but no `x-deprecated-reason` was set

func (*Client) ListSportsEdgeObservations

func (c *Client) ListSportsEdgeObservations(ctx context.Context, params *ListSportsEdgeObservationsParams, reqEditors ...RequestEditorFn) (*http.Response, error)

ListSportsEdgeObservations List observation-only sports-edge cohorts

Deprecated since #16310: use GET /api/v1/sports/pre-game-side-observations, which serves the same body. This path stays live and answers with Deprecation and successor Link headers. Pro-tier. Measures three explicitly observation-only Polymarket sports cohorts without changing or feeding GET /api/v1/sports-edge-signals: wider_holder measures pre-game holder piles outside the funded route's exact raw signals admission, including recent-flow rows rejected by its event, bucket, or total caps; in_play admits provider-confirmed live games and fails closed when the provider live-board snapshot is stale or unavailable or holder/directional evidence is stale or unavailable; emerging_pile is an additive post-compute projection of wider_holder rows with finite sharp_pct in [0.75, 0.85), holder_scan_complete=true, and a kickoff after its pinned projection cutoff. emerging_pile overlaps wider_holder, remains attributed to that source terminal and denominator, and is not holder-arrival history. Every row carries observation_only=true, provider/holder freshness and completeness fields, and the response carries a required snapshot-wide operational/unknown-completeness degraded boolean plus an accountable per-sport funnel over a closed 25-value terminal-reason vocabulary. Omitted or blank category selects all 14 registered observation sport buckets, including Table Tennis and Pickleball; those two remain outside the funded sports projection. All category and all-sports cache scopes share one global observation provider-work admission, so distinct scope keys cannot multiply concurrent provider fanout. One absolute ~25s compute deadline covers cache coordination, board/universe and primary-signals membership reads, holder cache/provider work, price/metadata evaluation, and directional reads, leaving ~5s below the public router timeout for funnel reconciliation, cleanup, and response transport. A shared pre-holder stage deadline jointly bounds those database reads and board reconciliation to the smaller of 12s or half of the absolute budget remaining when that stage starts, preserving holder/post-holder opportunity; board reads use bounded fair waves and cold holder admission gives each represented canonical sport one row before any sport repeats. A request that finds its scope's refresh in flight waits for that snapshot, and a scope refresh waits for another scope's global provider-work admission while at least ~15s of the absolute deadline remain. Absolute deadline exhaustion before a usable cache, provider-work admission still held at that ~15s bound, an in-flight refresh that ends without publishing while another waiting request takes it over, or pre-holder stage expiry before a usable stored universe or primary-signals membership result returns 503 with error.reason=read_model_warming. Category-resolution SQL errors, Redis coordination failures, and primary-signals membership query failures return 500 internal_error instead. With no usable stored universe, a replica-side observation-universe refresh failure (a recovery conflict, its statement timeout, a busy pool, or a replica marked down) returns the same 503 read_model_warming; any other observation-universe SQL error, or an invalid compact result, still returns 500 internal_error. Once a usable universe exists, later operational or unknown-completeness board, holder, or price/metadata failures are retained as explicit terminal reasons in a degraded 200 response with degraded=true: 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 an attempted holder-provider failure, and holder_deadline_unavailable is holder-stage deadline exhaustion. Directional incompleteness is cohort-specific: a wider_holder row remains emitted with terminal wider_holder_emitted and directional_status=unavailable, while an in_play row fails closed with terminal in_play_directional_unavailable. capacity_limited records intentional bounded provider-work admission in the funnel and does not by itself set degraded=true. Healthy wider_holder requests may reuse a snapshot for ~180s; healthy emerging_pile requests may use the same snapshot. in_play never serves a cached observation snapshot older than ~30s, and degraded snapshots use ~30s. The ETag is a weak semantic validator over the stable page payload, including next_cursor page position; request-specific meta excluded; the opaque emerging_pile projection cutoff in next_cursor is not itself a validator input.

Corresponds with GET /api/v1/sports-edge-observations (the `ListSportsEdgeObservations` operationId). Deprecated: this operation has been marked as deprecated upstream, but no `x-deprecated-reason` was set

func (*Client) ListSportsEdgeSignals

func (c *Client) ListSportsEdgeSignals(ctx context.Context, params *ListSportsEdgeSignalsParams, reqEditors ...RequestEditorFn) (*http.Response, error)

ListSportsEdgeSignals List ranked pre-game sports-edge signals

Deprecated since #16310: use GET /api/v1/sports/pre-game-sides, which serves the same body. This path stays live and answers with Deprecation and successor Link headers. Pro-tier. Ranked list of upcoming pre-game sports markets (moneyline + props) where graded (S/A/B) sharp money is piled on one side, each row carrying signal_created_at (the UTC time its immutable snapshot was computed), the piled side, its grade distribution, kickoff, piled-side Polymarket CLOB token id, and required shadow-only category_skill evidence. signal_created_at is not provider market creation time or request time. Eligibility and ranking remain the funded FLOW/HOLDER contract; category skill cannot change membership, order, rank, cursor, routing, or sizing. meta exposes explicit category source/model/status plus independently computed pre/post SHA-256 base-vector hashes that must match. Served from a shared server-side snapshot cache (healthy TTL ~180s, degraded ~30s) computed once per category at the maximum 48h horizon and filtered at request time; the cursor pins to that snapshot and a stale cursor is rejected. Polymarket only; source coverage is partial first-observed post-launch Goldsky primary taker BUY fills admitted by the canonical whale-alert thresholds, never reconstructed history. Deliberately not the editorial Pick of the Day ranker.

Corresponds with GET /api/v1/sports-edge-signals (the `ListSportsEdgeSignals` operationId). Deprecated: this operation has been marked as deprecated upstream, but no `x-deprecated-reason` was set

func (*Client) ListSuspiciousTrades added in v0.4.0

func (c *Client) ListSuspiciousTrades(ctx context.Context, params *ListSuspiciousTradesParams, reqEditors ...RequestEditorFn) (*http.Response, error)

ListSuspiciousTrades Get suspicious trades

Stored trades whose recorded suspicion score meets the live flag threshold. Evidence contains the scorer's stored signals. Cursor-paginated by suspicion score. mode=live (default) uses fresh cached pages; mode=stable pins pagination to one published scoring generation and returns cursor_expired when scores or filters change. Canonical since 2026-09-23; GET /api/v1/insider-radar is its deprecated alias.

Corresponds with GET /api/v1/suspicious-trades (the `ListSuspiciousTrades` operationId).

func (*Client) ListTrendingWallets

func (c *Client) ListTrendingWallets(ctx context.Context, params *ListTrendingWalletsParams, reqEditors ...RequestEditorFn) (*http.Response, error)

ListTrendingWallets List trending wallets

Returns wallets ranked by Polymarket weekly/monthly P&L (Polymarket-only discovery), with opaque page-cursor pagination. trending_pnl_usd and the by-PNL row order come from Polymarket's canonical leaderboard (data-api.polymarket.com/v2/leaderboard?time_period=week|month&sort_by=PNL), not a locally summed realized-leaf total. Each row also carries window volume, distinct markets, grade, hot-streak tier, and a shape-only daily P&L sparkline derived from the Polymarket user-pnl cumulative curve (per-day deltas; not guaranteed to sum to trending_pnl_usd). The response comes from a retained Redis board: meta.cached is true, and meta.cache_age_s reports the original board age when known (omitted when unknown). A backend read of a board at least 120 seconds old attempts a detached refresh; after a quiet spell a product board may be up to a day old. HTTP freshness ends at 120 seconds; max-age plus stale-while-revalidate cannot exceed the remaining original retention. Unknown age grants no cache window. A true cold read returns 503 (warming, retry-after), never a fabricated ranking. Polymarket-only: the read model filters platform = 'polymarket'. Cursors are bound to the effective limit, window and ranked-board generation; a changed board or request scope returns 400 with error.reason=cursor_expired, and legacy page-only cursors must restart from page one.

Corresponds with GET /api/v1/leaderboard/trending (the `ListTrendingWallets` operationId).

func (*Client) ListWebhookDeliveries

func (c *Client) ListWebhookDeliveries(ctx context.Context, id int64, params *ListWebhookDeliveriesParams, reqEditors ...RequestEditorFn) (*http.Response, error)

ListWebhookDeliveries List webhook delivery log

Recent delivery attempts for one webhook destination owned by the authenticated API key user, newest first, with opaque cursor pagination. Returns 404 (identical to an unknown id) when the endpoint is not owned by the caller, so a non-owner cannot tell an owned-but-empty log apart from someone else's endpoint. Delivery rows omit the request body and signing secret. next_attempt_at is when a pending or retry delivery is next attempted; retry_schedule_reason says whether the queue is following receiver_retry_after, transient_failure, permanent_or_auth_failure, manual_redelivery, or configuration_changed; both are null while an attempt is in flight and once the delivery is delivered or dead_letter. A delivery keeps the existing eight-attempt budget, endpoint failure budget, fairness limits, and ordinary 7380-second upper-bound schedule; see POST /api/v1/webhooks for the bounded Retry-After policy. Resend a dead_letter delivery with POST /api/v1/webhooks/{id}/deliveries/{delivery_id}/redeliver.

Corresponds with GET /api/v1/webhooks/{id}/deliveries (the `ListWebhookDeliveries` operationId).

func (*Client) ListWebhookEvents

func (c *Client) ListWebhookEvents(ctx context.Context, params *ListWebhookEventsParams, reqEditors ...RequestEditorFn) (*http.Response, error)

ListWebhookEvents List webhook event catalog

Self-describing catalog of every webhook event type: its description, data payload shape, and whether it is active (has a firing producer) or dormant (subscribable but not yet delivered; no event type is dormant today). The catalog is identical for every authenticated key and exposes no owner-scoped data. 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) appear in the catalog but 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 and download routes.

Corresponds with GET /api/v1/webhooks/events (the `ListWebhookEvents` operationId).

func (*Client) ListWebhooks

func (c *Client) ListWebhooks(ctx context.Context, params *ListWebhooksParams, reqEditors ...RequestEditorFn) (*http.Response, error)

ListWebhooks List builder webhook destinations

Returns webhook destinations owned by the authenticated API key user. Deleted endpoints are omitted; an endpoint paused with PATCH or disabled after consecutive failures is listed with status disabled. Subscribable event_types and their payload shapes are described by GET /api/v1/webhooks/events. Export lifecycle event types (export_job_ready, export_job_failed, export_job_expired, export_job_cancelled) are delivered only to the API-key account that created the export and contain no download URL; use the authorized export status and download routes. Four subscribable event types are Pro-only and only deliver to API keys on an active Pro subscription. whale_trades_inserted is one of them, gated by the same SubscriberScope::InsiderOnly mechanism as the other three (each type carries its own LiveEventContract entry; they share the scope value). The other three: wallet_grade_changed (data: wallet, trader_id, old_grade, new_grade, direction (upgrade|downgrade), skill_index, final_score, date) fires on a Pass-2 grade transition; insider_radar_flag_raised (data: trade_id, wallet, trader_id, condition_id, suspicion_score, track, side (yes|no), size, price) fires the first time a trade's suspicion score crosses the radar flag threshold; sharp_money_flow_detected (data: condition_id, net_flow_usd, abs_net_flow_usd, dominant_side (yes|no), grade_floor (S|A|B|C|D|F), whale_trade_count, window) fires when a scheduled scanner detects ranked-trader net flow crossing a threshold (up or down) on a market, and smart_money_flow_detected is its deprecated spelling of the same event. live_sports_updated (data: event_slug, game_id, league, version, changed, observed_at, published_at, status, period, clock, live, ended, scores, series_format, snapshot_url) is ungated and fires as a bounded per-game pulse when a live game's scores, status, period or live/ended state moves: at most one delivery per game per 20 seconds, with a live or ended transition exempt from that interval, and the game clock alone never firing one. version is a durable per-game ordinal, changed lists the material fields that moved since that game's previous delivered pulse, and snapshot_url is where to re-read the whole game after a gap.

Corresponds with GET /api/v1/webhooks (the `ListWebhooks` operationId).

func (*Client) ListWhaleTradeCounterpartyExecutions

func (c *Client) ListWhaleTradeCounterpartyExecutions(ctx context.Context, id string, params *ListWhaleTradeCounterpartyExecutionsParams, reqEditors ...RequestEditorFn) (*http.Response, error)

ListWhaleTradeCounterpartyExecutions Page counterparty executions

Returns a bounded execution page from the immutable snapshot emitted by whale-trade detail. A stale or changed snapshot returns a cursor-expired error so clients restart from detail. Deprecated alias of GET /api/v1/large-trades/{id}/counterparties/executions, kept live and never removed (#16304); every response carries `Deprecation: @1790047200` (RFC 9745, 2026-09-22T03:20:00Z) and a `Link` to the successor (`rel="successor-version"`) and to the versioning policy (`rel="deprecation"`). No `Sunset` header is sent because no removal is planned.

Corresponds with GET /api/v1/whale-trades/{id}/counterparties/executions (the `ListWhaleTradeCounterpartyExecutions` operationId). Deprecated: this operation has been marked as deprecated upstream, but no `x-deprecated-reason` was set

func (*Client) ListWhaleTradeCounterpartyMakers

func (c *Client) ListWhaleTradeCounterpartyMakers(ctx context.Context, id string, executionId string, params *ListWhaleTradeCounterpartyMakersParams, reqEditors ...RequestEditorFn) (*http.Response, error)

ListWhaleTradeCounterpartyMakers Page maker counterparties

Returns a bounded maker-wallet page for one exact execution. Percentages keep the complete execution denominator across pages. Deprecated alias of GET /api/v1/large-trades/{id}/counterparties/executions/{execution_id}/makers, kept live and never removed (#16304); every response carries `Deprecation: @1790047200` (RFC 9745, 2026-09-22T03:20:00Z) and a `Link` to the successor (`rel="successor-version"`) and to the versioning policy (`rel="deprecation"`). No `Sunset` header is sent because no removal is planned.

Corresponds with GET /api/v1/whale-trades/{id}/counterparties/executions/{execution_id}/makers (the `ListWhaleTradeCounterpartyMakers` operationId). Deprecated: this operation has been marked as deprecated upstream, but no `x-deprecated-reason` was set

func (*Client) ListWhaleTradeHistory

func (c *Client) ListWhaleTradeHistory(ctx context.Context, params *ListWhaleTradeHistoryParams, reqEditors ...RequestEditorFn) (*http.Response, error)

ListWhaleTradeHistory Replay historical whale trades

Returns historical whale trades from local whale_alerts rows, not request-time provider fetches. Filter by condition_id, trader, category, minimum grade, persisted suspicion, platform, and RFC3339 from/to windows. All filters are pushed into SQL before LIMIT, every request uses SQL-backed limit + 1 pagination, and results are ordered newest first by traded_at desc, id desc. Metadata exposes local_replay source and best_effort completeness. Deprecated alias of GET /api/v1/large-trades/history, kept live and never removed (#16304); every response carries `Deprecation: @1790047200` (RFC 9745, 2026-09-22T03:20:00Z) and a `Link` to the successor (`rel="successor-version"`) and to the versioning policy (`rel="deprecation"`). No `Sunset` header is sent because no removal is planned. The response adds a top-level `data_quality` object beside `data`, grouping alert, trade, trader, ranking, market, and volume fields by their database writer. `whale_alerts.inserted_xid` is reported as unknown because it is a transaction identifier rather than a timestamp. Its stored clocks are part of the ETag; `meta` continues to hold transport cache facts.

Corresponds with GET /api/v1/whale-trades/history (the `ListWhaleTradeHistory` operationId). Deprecated: this operation has been marked as deprecated upstream, but no `x-deprecated-reason` was set

func (*Client) ListWhaleTrades

func (c *Client) ListWhaleTrades(ctx context.Context, params *ListWhaleTradesParams, reqEditors ...RequestEditorFn) (*http.Response, error)

ListWhaleTrades List whale trades

Returns recent large trades with signal scoring and persisted suspicion facts. Filter by size, category, trader grade, or persisted suspicion. Filters are applied before pagination, and every request uses SQL-backed limit + 1 pagination so has_more and next_cursor reflect the filtered result set. Cursor-paginated, newest first. Market categories come from provider-backed market_canonical identity. Deprecated alias of GET /api/v1/large-trades, kept live and never removed (#16304); every response carries `Deprecation: @1790047200` (RFC 9745, 2026-09-22T03:20:00Z) and a `Link` to the successor (`rel="successor-version"`) and to the versioning policy (`rel="deprecation"`). No `Sunset` header is sent because no removal is planned. The response adds a top-level `data_quality` object beside `data`, grouping alert, trade, trader, ranking, market, and volume fields by their database writer. `whale_alerts.inserted_xid` is reported as unknown because it is a transaction identifier rather than a timestamp. Its stored clocks are part of the ETag; `meta` continues to hold transport cache facts. Pass since to poll for new trades: the answer holds only the trades recorded after the one you name, and with If-None-Match a poll that finds none is 304 with an empty body.

Corresponds with GET /api/v1/whale-trades (the `ListWhaleTrades` operationId). Deprecated: this operation has been marked as deprecated upstream, but no `x-deprecated-reason` was set

func (*Client) OpenMcpEventStream

func (c *Client) OpenMcpEventStream(ctx context.Context, params *OpenMcpEventStreamParams, reqEditors ...RequestEditorFn) (*http.Response, error)

OpenMcpEventStream MCP GET: no server-to-client stream (405)

The MCP Streamable HTTP transport lets a client GET the endpoint to open a server-to-client text/event-stream, and lets the server answer 405 Method Not Allowed when it offers no such stream. This server sends no notifications, so an authenticated GET answers 405 with Allow: POST, a JSON-RPC error body (code -32004) and X-Mcp-Error-Code: -32004; a conforming client (the reference @modelcontextprotocol/sdk included) reads the 405 as no stream here and does not retry. Without a credential the GET answers 401 with the WWW-Authenticate challenge naming /.well-known/oauth-protected-resource/api/v1/mcp, which is where a client that has only run the public handshake learns to start the OAuth flow. Until 2026-09-22 an authenticated GET answered 200 text/event-stream and closed the body at once, which conforming clients reconnected to every second. Every JSON-RPC request goes over POST.

Corresponds with GET /api/v1/mcp (the `OpenMcpEventStream` operationId).

func (*Client) PrepareWebhookSecret added in v0.3.0

func (c *Client) PrepareWebhookSecret(ctx context.Context, id int64, params *PrepareWebhookSecretParams, reqEditors ...RequestEditorFn) (*http.Response, error)

PrepareWebhookSecret Prepare a staged builder webhook signing secret

Creates a pending signing secret while the current secret remains active. Deploy the returned one-time signing_secret to the receiver before calling activate. The response exposes secret_rotation.status=pending; an existing pending secret is returned again so a lost response can be recovered safely.

Corresponds with POST /api/v1/webhooks/{id}/rotate-secret/prepare (the `PrepareWebhookSecret` operationId).

func (*Client) RedeliverWebhookDelivery added in v0.2.0

func (c *Client) RedeliverWebhookDelivery(ctx context.Context, id int64, deliveryId int64, params *RedeliverWebhookDeliveryParams, reqEditors ...RequestEditorFn) (*http.Response, error)

RedeliverWebhookDelivery Redeliver a dead-lettered webhook delivery

Returns one dead_letter delivery to the delivery queue with a fresh attempt budget: status becomes pending, attempt_count resets to 0, and next_attempt_at is now, so the delivery worker claims it like any queued delivery, under the same per-owner and per-origin concurrency limits. Use it after a failed delivery exhausts its retries, or after re-enabling an endpoint whose queued deliveries were dead-lettered when it was disabled: PATCH /api/v1/webhooks/{id} {"enabled": true} resends nothing by itself. The resend is signed with the endpoint's current signing secret and sent to its current URL, and keeps the delivery's event_id and idempotency-key header, so a receiver that already processed the event can deduplicate it; x-0xinsider-delivery-attempt starts again at 1. last_response_status and last_error keep the previous failure until the next attempt records its own. Returns 409 when the delivery is already delivered or still queued (pending, retry, or processing), or when the endpoint would not receive it (disabled, not verified, or no longer subscribed to the delivery's event_type); error.message names the step that lets the same request succeed. Returns 404 for an endpoint or delivery the caller does not own, including a delivery removed by the seven-day retention of delivered and dead_letter history.

Corresponds with POST /api/v1/webhooks/{id}/deliveries/{delivery_id}/redeliver (the `RedeliverWebhookDelivery` operationId).

func (*Client) RedirectApiOpenapiSpec

func (c *Client) RedirectApiOpenapiSpec(ctx context.Context, params *RedirectApiOpenapiSpecParams, reqEditors ...RequestEditorFn) (*http.Response, error)

RedirectApiOpenapiSpec Redirect to the canonical OpenAPI spec

Unauthenticated API-origin compatibility redirect to the canonical web-origin OpenAPI JSON document at https://0xinsider.com/api/v1/openapi.json.

Corresponds with GET /api/v1/openapi.json (the `RedirectApiOpenapiSpec` operationId).

func (*Client) RegisterAgent added in v0.2.0

func (c *Client) RegisterAgent(ctx context.Context, params *RegisterAgentParams, reqEditors ...RequestEditorFn) (*http.Response, error)

RegisterAgent Register an agent for a sandbox key

Self-serve agent onboarding: no account, no request body, no human step. Returns a sandbox API key (oxi_sk_test_...) and the path to live access. The key works only on the sandbox server (https://0xinsider.com/sandbox/api/v1), where it is optional: send it as Authorization: Bearer to exercise the credential path, and the sandbox answers a malformed key with the production 401. Nothing is stored, so the key cannot be listed or revoked and does not expire; register again for a new one. The live API answers a sandbox key with 401 invalid_api_key and error.reason sandbox_api_key. Live data needs an account with an active Pro subscription, and either an oxi_sk_live_ key from https://0xinsider.com/developers or an OAuth access token (https://0xinsider.com/auth.md). The request body is not read.

Corresponds with POST /api/v1/agents/register (the `RegisterAgent` operationId).

func (*Client) RetireWebhookSecret added in v0.3.0

func (c *Client) RetireWebhookSecret(ctx context.Context, id int64, params *RetireWebhookSecretParams, reqEditors ...RequestEditorFn) (*http.Response, error)

RetireWebhookSecret Retire the previous builder webhook signing secret

Ends the one-hour dual-signature overlap and removes the previous signing secret from future delivery authorization. Call this after the receiver accepts the activated secret. The operation is idempotent and does not return signing_secret.

Corresponds with POST /api/v1/webhooks/{id}/rotate-secret/retire (the `RetireWebhookSecret` operationId).

func (*Client) RotateWebhookSecret

func (c *Client) RotateWebhookSecret(ctx context.Context, id int64, params *RotateWebhookSecretParams, reqEditors ...RequestEditorFn) (*http.Response, error)

RotateWebhookSecret Rotate a builder webhook signing secret

Rotates the endpoint signing secret and returns the new signing_secret once in the response. Returns 409 with error.reason=webhook_delivery_in_progress while a live delivery freezes the current signing nonce; retry after it completes.

Corresponds with POST /api/v1/webhooks/{id}/rotate-secret (the `RotateWebhookSecret` operationId).

func (*Client) SearchContent

func (c *Client) SearchContent(ctx context.Context, params *SearchContentParams, reqEditors ...RequestEditorFn) (*http.Response, error)

SearchContent Search editorial content

Search 0xinsider editorial content by keyword. Returns backend-owned learn, glossary, comparison, research, and trading-strategy items with canonical URLs. Opaque ranking scores are not exposed.

Corresponds with GET /api/v1/content/search (the `SearchContent` operationId).

func (*Client) SearchMarkets

func (c *Client) SearchMarkets(ctx context.Context, params *SearchMarketsParams, reqEditors ...RequestEditorFn) (*http.Response, error)

SearchMarkets Search markets

Search prediction markets by keyword. Returns representative market matches with status, category, and platform metadata. Cursor pagination advances over grouped market results rather than raw sub-market rows.

Corresponds with GET /api/v1/markets/search (the `SearchMarkets` operationId).

func (*Client) SubmitTraderExport

func (c *Client) SubmitTraderExport(ctx context.Context, address string, params *SubmitTraderExportParams, reqEditors ...RequestEditorFn) (*http.Response, error)

SubmitTraderExport Submit a trader dataset export job

Queues an async export of the trader's full dataset in the requested format (json default, ndjson, or csv) and returns the job resource. Poll the status route at poll_after_s until terminal is true, then follow the download route while status is 'ready' (until expires_at, 24 hours from submit). Reuse: without fresh=true, a live job for the same trader and format inside its retention window (queued, running, reconcile_required or ready) is returned with 200 instead of a new one, except a job its owner asked to cancel, which is never reused; its data_as_of says what its file is a snapshot of. With fresh=true only a queued job (which has not started reading) is reused; a running, reconciling or ready job is left alone and a new job is reserved, which consumes quota like any new job. Both decisions run under one per-account lock, so two concurrent submits cannot both reserve when one would have reused the other. Quotas are the per-user daily and per-address hourly export caps, keyed on the API key owner so an API key never widens its owner's quota. New full exports select one database read generation before delivery. JSON and NDJSON add export_metadata.generation (id, selected_at, consistency=repeatable_read, source_watermarks for positions, native P&L, categories and all matching trades), position_generation, provider_observations (provider values and observation/revision metadata), category_data_as_of, pnl_date_from/to, pnl_rows, pnl_row_limit (3650), markets_rows, markets_row_limit (50000), summary_basis and trades_basis. Summary counts cover all stored markets; the markets section retains its existing latest-activity 50000-row limit and P&L its earliest-3650-days limit. These are database consistency and section coverage facts, not a claim that providers observed every section simultaneously. CSV appends export_generation, export_selected_at and export_consistency columns. Downloaded objects also expose x-amz-meta-export-generation, x-amz-meta-export-selected-at, x-amz-meta-export-consistency, x-amz-meta-export-trades and x-amz-meta-export-provenance headers, including empty CSV files. Historical artifacts remain unchanged. Select CSV columns by name; JSON/NDJSON readers may ignore the additive fields. A read exceeding 600 seconds or an uncompressed artifact exceeding 2 GiB fails without publishing a partial file.

Corresponds with POST /api/v1/trader/{address}/export (the `SubmitTraderExport` operationId).

func (*Client) SubmitWhaleDataset added in v0.4.0

func (c *Client) SubmitWhaleDataset(ctx context.Context, body SubmitWhaleDatasetJSONRequestBody, reqEditors ...RequestEditorFn) (*http.Response, error)

SubmitWhaleDataset Create an immutable whale dataset

Extract at most 1,000,000 rows and 256 MiB uncompressed; exceeding either bound fails the job and publishes no partial file. Window and filters freeze on admission; rows and source facts freeze on one worker database snapshot. NDJSON uses exact decimal strings, with no current grade or market enrichment. The manifest checkpoint includes already committed arrivals after to plus later/open writers, with intentional overlap. Paid export scope; jobs are private to the credential owner. Shares the 20/day owner export quota and fair worker admission with trader exports; datasets also have a combined 5/hour quota. Three worker attempts, 24-hour retention, no partial download; cancellation consumes its reservation. Coverage is whale alerts, not all provider fills.

Takes a body of the `application/json` content type.

Corresponds with POST /api/v1/datasets/whale-trades (the `SubmitWhaleDataset` operationId).

func (*Client) SubmitWhaleDatasetWithBody added in v0.4.0

func (c *Client) SubmitWhaleDatasetWithBody(ctx context.Context, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*http.Response, error)

SubmitWhaleDatasetWithBody Create an immutable whale dataset

Extract at most 1,000,000 rows and 256 MiB uncompressed; exceeding either bound fails the job and publishes no partial file. Window and filters freeze on admission; rows and source facts freeze on one worker database snapshot. NDJSON uses exact decimal strings, with no current grade or market enrichment. The manifest checkpoint includes already committed arrivals after to plus later/open writers, with intentional overlap. Paid export scope; jobs are private to the credential owner. Shares the 20/day owner export quota and fair worker admission with trader exports; datasets also have a combined 5/hour quota. Three worker attempts, 24-hour retention, no partial download; cancellation consumes its reservation. Coverage is whale alerts, not all provider fills.

Takes any type of body and a specified content type.

Corresponds with POST /api/v1/datasets/whale-trades (the `SubmitWhaleDataset` operationId).

func (*Client) UpdateWebhook

func (c *Client) UpdateWebhook(ctx context.Context, id int64, params *UpdateWebhookParams, body UpdateWebhookJSONRequestBody, reqEditors ...RequestEditorFn) (*http.Response, error)

UpdateWebhook Update a builder webhook destination

Updates name, HTTPS URL, event types, or enabled state. URL changes force pending_verification and return a new verification token; the new destination must answer 2xx to the signed webhook.verification challenge before deliveries resume. A URL change returns 409 with error.reason=webhook_delivery_in_progress while this destination has an active delivery; retry the same mutation after that request completes.

Takes a body of the `application/json` content type.

Corresponds with PATCH /api/v1/webhooks/{id} (the `UpdateWebhook` operationId).

func (*Client) UpdateWebhookWithBody

func (c *Client) UpdateWebhookWithBody(ctx context.Context, id int64, params *UpdateWebhookParams, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*http.Response, error)

UpdateWebhookWithBody Update a builder webhook destination

Updates name, HTTPS URL, event types, or enabled state. URL changes force pending_verification and return a new verification token; the new destination must answer 2xx to the signed webhook.verification challenge before deliveries resume. A URL change returns 409 with error.reason=webhook_delivery_in_progress while this destination has an active delivery; retry the same mutation after that request completes.

Takes any type of body and a specified content type.

Corresponds with PATCH /api/v1/webhooks/{id} (the `UpdateWebhook` operationId).

func (*Client) VerifyWebhook

func (c *Client) VerifyWebhook(ctx context.Context, id int64, params *VerifyWebhookParams, body VerifyWebhookJSONRequestBody, reqEditors ...RequestEditorFn) (*http.Response, error)

VerifyWebhook Verify a builder webhook destination

Activates a pending webhook destination. Two conditions must both hold: the one-time verification token matches and has not expired, AND the destination answers 2xx to a signed challenge this operation POSTs to the endpoint's stored url. The challenge body is {"type":"webhook.verification","token":"<verification_token>","webhook_id":<id>}. It carries x-0xinsider-event-type: webhook.verification plus the same x-0xinsider-timestamp and x-0xinsider-signature headers a delivery carries, signed with that endpoint's signing_secret, so verify it exactly as you verify a delivery. Answer any 2xx within 10 seconds; the challenge response body is never read, and the challenge follows no redirects. A status outside 2xx, no answer within 10 seconds, or a url that does not resolve to a publicly routable address leaves status at pending_verification and returns 422. The token alone never activates an endpoint.

Takes a body of the `application/json` content type.

Corresponds with POST /api/v1/webhooks/{id}/verify (the `VerifyWebhook` operationId).

func (*Client) VerifyWebhookWithBody

func (c *Client) VerifyWebhookWithBody(ctx context.Context, id int64, params *VerifyWebhookParams, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*http.Response, error)

VerifyWebhookWithBody Verify a builder webhook destination

Activates a pending webhook destination. Two conditions must both hold: the one-time verification token matches and has not expired, AND the destination answers 2xx to a signed challenge this operation POSTs to the endpoint's stored url. The challenge body is {"type":"webhook.verification","token":"<verification_token>","webhook_id":<id>}. It carries x-0xinsider-event-type: webhook.verification plus the same x-0xinsider-timestamp and x-0xinsider-signature headers a delivery carries, signed with that endpoint's signing_secret, so verify it exactly as you verify a delivery. Answer any 2xx within 10 seconds; the challenge response body is never read, and the challenge follows no redirects. A status outside 2xx, no answer within 10 seconds, or a url that does not resolve to a publicly routable address leaves status at pending_verification and returns 422. The token alone never activates an endpoint.

Takes any type of body and a specified content type.

Corresponds with POST /api/v1/webhooks/{id}/verify (the `VerifyWebhook` operationId).

type ClientInterface

type ClientInterface interface {

	// GetApiDiscovery API discovery
	//
	// Unauthenticated API-origin discovery document pointing agents to the canonical API base URL, full docs, web-origin OpenAPI spec, health check, and the COMPLETE index of authenticated data routes. data.authenticated_routes is the whole authenticated route surface, not a sample: it carries every authenticated route this spec documents, so an agent that starts here never has to guess a path. The index is a hand-maintained const in backend/src/api_v1/discovery.rs kept in step with this spec by review; no automated check compares the two, so treat this spec as authoritative if they ever disagree.
	//
	// Corresponds with GET /api/v1 (the `GetApiDiscovery` operationId).
	GetApiDiscovery(ctx context.Context, params *GetApiDiscoveryParams, reqEditors ...RequestEditorFn) (*http.Response, error)

	// RegisterAgent Register an agent for a sandbox key
	//
	// Self-serve agent onboarding: no account, no request body, no human step. Returns a sandbox API key (oxi_sk_test_...) and the path to live access. The key works only on the sandbox server (https://0xinsider.com/sandbox/api/v1), where it is optional: send it as Authorization: Bearer to exercise the credential path, and the sandbox answers a malformed key with the production 401. Nothing is stored, so the key cannot be listed or revoked and does not expire; register again for a new one. The live API answers a sandbox key with 401 invalid_api_key and error.reason sandbox_api_key. Live data needs an account with an active Pro subscription, and either an oxi_sk_live_ key from https://0xinsider.com/developers or an OAuth access token (https://0xinsider.com/auth.md). The request body is not read.
	//
	// Corresponds with POST /api/v1/agents/register (the `RegisterAgent` operationId).
	RegisterAgent(ctx context.Context, params *RegisterAgentParams, reqEditors ...RequestEditorFn) (*http.Response, error)

	// SearchContent Search editorial content
	//
	// Search 0xinsider editorial content by keyword. Returns backend-owned learn, glossary, comparison, research, and trading-strategy items with canonical URLs. Opaque ranking scores are not exposed.
	//
	// Corresponds with GET /api/v1/content/search (the `SearchContent` operationId).
	SearchContent(ctx context.Context, params *SearchContentParams, reqEditors ...RequestEditorFn) (*http.Response, error)

	// GetCoverage Which reads the API serves for Polymarket
	//
	// Unauthenticated discovery endpoint that declares which V1 data surfaces the API serves for Polymarket, the one venue it covers. Every capability reports supported. Canonical since #16315; GET /api/v1/platforms is its deprecated alias with the same body.
	//
	// Corresponds with GET /api/v1/coverage (the `GetCoverage` operationId).
	GetCoverage(ctx context.Context, params *GetCoverageParams, reqEditors ...RequestEditorFn) (*http.Response, error)

	// SubmitWhaleDatasetWithBody Create an immutable whale dataset
	//
	// Extract at most 1,000,000 rows and 256 MiB uncompressed; exceeding either bound fails the job and publishes no partial file. Window and filters freeze on admission; rows and source facts freeze on one worker database snapshot. NDJSON uses exact decimal strings, with no current grade or market enrichment. The manifest checkpoint includes already committed arrivals after to plus later/open writers, with intentional overlap. Paid export scope; jobs are private to the credential owner. Shares the 20/day owner export quota and fair worker admission with trader exports; datasets also have a combined 5/hour quota. Three worker attempts, 24-hour retention, no partial download; cancellation consumes its reservation. Coverage is whale alerts, not all provider fills.
	//
	// Takes any type of body and a specified content type.
	//
	// Corresponds with POST /api/v1/datasets/whale-trades (the `SubmitWhaleDataset` operationId).
	SubmitWhaleDatasetWithBody(ctx context.Context, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*http.Response, error)

	// SubmitWhaleDataset Create an immutable whale dataset
	//
	// Extract at most 1,000,000 rows and 256 MiB uncompressed; exceeding either bound fails the job and publishes no partial file. Window and filters freeze on admission; rows and source facts freeze on one worker database snapshot. NDJSON uses exact decimal strings, with no current grade or market enrichment. The manifest checkpoint includes already committed arrivals after to plus later/open writers, with intentional overlap. Paid export scope; jobs are private to the credential owner. Shares the 20/day owner export quota and fair worker admission with trader exports; datasets also have a combined 5/hour quota. Three worker attempts, 24-hour retention, no partial download; cancellation consumes its reservation. Coverage is whale alerts, not all provider fills.
	//
	// Takes a body of the `application/json` content type.
	//
	// Corresponds with POST /api/v1/datasets/whale-trades (the `SubmitWhaleDataset` operationId).
	SubmitWhaleDataset(ctx context.Context, body SubmitWhaleDatasetJSONRequestBody, reqEditors ...RequestEditorFn) (*http.Response, error)

	// GetWhaleDatasetStatus Read a whale dataset job
	//
	// Read queued, running, cancel_requested, ready, failed, reconcile_required, expired or cancelled. Poll only while next_action is poll, after poll_after_s. Ready manifests contain count, content and compressed SHA-256, schema, filters, source, horizon, expiry and replay continuation. Deltas do not retain the finite time filter and can repeat rows; deduplicate by wt_ ID (payload.whale_alert_id when not expanded). This is an insertion feed, not update/delete CDC. Paid export scope; jobs are private to the credential owner. Shares the 20/day owner export quota and fair worker admission with trader exports; datasets also have a combined 5/hour quota. Three worker attempts, 24-hour retention, no partial download; cancellation consumes its reservation. Coverage is whale alerts, not all provider fills.
	//
	// Corresponds with GET /api/v1/datasets/whale-trades/{job_id} (the `GetWhaleDatasetStatus` operationId).
	GetWhaleDatasetStatus(ctx context.Context, jobId int64, reqEditors ...RequestEditorFn) (*http.Response, error)

	// CancelWhaleDataset Cancel a whale dataset job
	//
	// Cancel queued jobs immediately and request running jobs stop at their next safe point. Repeating cancel converges on the current state; cancellation after the completion fence leaves the artifact ready. Paid export scope; jobs are private to the credential owner. Shares the 20/day owner export quota and fair worker admission with trader exports; datasets also have a combined 5/hour quota. Three worker attempts, 24-hour retention, no partial download; cancellation consumes its reservation. Coverage is whale alerts, not all provider fills.
	//
	// Corresponds with POST /api/v1/datasets/whale-trades/{job_id}/cancel (the `CancelWhaleDataset` operationId).
	CancelWhaleDataset(ctx context.Context, jobId int64, reqEditors ...RequestEditorFn) (*http.Response, error)

	// DownloadWhaleDataset Download an immutable whale dataset
	//
	// Download only a ready artifact; status handles failure and cancellation. Retired artifacts return 410 at serving time. Paid export scope; jobs are private to the credential owner. Shares the 20/day owner export quota and fair worker admission with trader exports; datasets also have a combined 5/hour quota. Three worker attempts, 24-hour retention, no partial download; cancellation consumes its reservation. Coverage is whale alerts, not all provider fills.
	//
	// Corresponds with GET /api/v1/datasets/whale-trades/{job_id}/download (the `DownloadWhaleDataset` operationId).
	DownloadWhaleDataset(ctx context.Context, jobId int64, reqEditors ...RequestEditorFn) (*http.Response, error)

	// GetEventReplaySince Replay public large-trade events
	//
	// Returns durable public large-trade events strictly after an opaque cursor, in commit order: events are ordered by the position at which their write became visible to every reader (whale_alerts.inserted_xid), then by whale_alerts.id, and a page never reaches past the oldest write transaction still open when it was read. A trade whose id is lower than one already delivered but whose write finished later is therefore delivered on a later request instead of being skipped (#16180). This is a separate API-key contract from the browser/session /api/events/feed stream: browser-only and private alert, following, radar, and position patch events are excluded until they have a durable public outbox.
	//
	// Corresponds with GET /api/v1/events/feed/since (the `GetEventReplaySince` operationId).
	GetEventReplaySince(ctx context.Context, params *GetEventReplaySinceParams, reqEditors ...RequestEditorFn) (*http.Response, error)

	// ListGames List covered games
	//
	// One coherent game view per row: both sides with their provider ids and live scores, the UTC kickoff, the provider's own status, the esports series format, and every linked Polymarket market with its condition id and outcome token ids. Built from the same provider-first live and upcoming projections the site's sports boards use, so a request pays no provider fan-out of its own. Ordered by kickoff, then by event_slug; games whose kickoff the provider has not published sort last. coverage names the sports and leagues this deployment serves and any scope whose source was unavailable for the read, so an empty page is never ambiguous. A sport or status outside the published vocabulary returns an empty page rather than a 400. Carries the board's existing competitor-bound provider moneyline price state by default, with an observation clock and explicit incomplete or invalid state. It does not fetch another provider endpoint. Sharp-money splits and holder identities remain on their own gated routes.
	//
	// Corresponds with GET /api/v1/games (the `ListGames` operationId).
	ListGames(ctx context.Context, params *ListGamesParams, reqEditors ...RequestEditorFn) (*http.Response, error)

	// GetGame Get one game
	//
	// The same game object GET /api/v1/games returns, for one 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. A slug outside the published coverage returns 404, including a real Polymarket event in a sport this deployment does not serve; GET /api/v1/games names what is covered.
	//
	// Corresponds with GET /api/v1/games/{event_slug} (the `GetGame` operationId).
	GetGame(ctx context.Context, eventSlug string, params *GetGameParams, reqEditors ...RequestEditorFn) (*http.Response, error)

	// GetHealth Health check
	//
	// Returns API health status. No authentication required. Limited to 120 requests per minute per IP.
	//
	// Corresponds with GET /api/v1/health (the `GetHealth` operationId).
	GetHealth(ctx context.Context, params *GetHealthParams, reqEditors ...RequestEditorFn) (*http.Response, error)

	// ListInsiderRadar Get insider radar flags
	//
	// Deprecated alias of GET /api/v1/suspicious-trades (2026-09-23), kept live with no retirement date; responses carry Deprecation and a Link rel="successor-version" to it. Stored trades whose recorded suspicion score meets the live flag threshold. Evidence contains the scorer's stored signals. Cursor-paginated by suspicion score. mode=live (default) uses fresh cached pages; mode=stable pins pagination to one published scoring generation and returns cursor_expired when scores or filters change.
	//
	// Corresponds with GET /api/v1/insider-radar (the `ListInsiderRadar` operationId).
	//
	// Deprecated: this operation has been marked as deprecated upstream, but no `x-deprecated-reason` was set
	ListInsiderRadar(ctx context.Context, params *ListInsiderRadarParams, reqEditors ...RequestEditorFn) (*http.Response, error)

	// GetInsiderRadarFlag Get insider radar flag by ID
	//
	// Deprecated alias of GET /api/v1/suspicious-trades/{id} (2026-09-23), kept live with no retirement date; responses carry Deprecation and a Link rel="successor-version" to it. The envelope keeps object: radar_flag, so an integration that branches on it keeps working here. Returns one suspicious-trading radar flag by raw whale_alerts.id or the rf_-prefixed id emitted by list responses.
	//
	// Corresponds with GET /api/v1/insider-radar/{id} (the `GetInsiderRadarFlag` operationId).
	//
	// Deprecated: this operation has been marked as deprecated upstream, but no `x-deprecated-reason` was set
	GetInsiderRadarFlag(ctx context.Context, id string, params *GetInsiderRadarFlagParams, reqEditors ...RequestEditorFn) (*http.Response, error)

	// ListLargePositions List large positions
	//
	// Returns the largest current open positions from graded traders, value-descending, with opaque cursor pagination. This is a change-detection feed, not a holder list: a row needs a current value of at least 50,000 USD and a live detection in the last 24 hours, so a wallet that holds a market without moving is not listed. For every graded holder of one market use GET /api/v1/market/{condition_id}/holders. Polymarket-only by design: the large-positions scanner filters platform = 'polymarket' (backend/crates/large-positions/src/scanner.rs), so only Polymarket rows are scanned and an unknown condition_id filter returns an empty list (never fabricated rows). The teaser cap that the internal product UI applies to anonymous viewers does not apply here: the API key already proves an active Pro subscription (wire tier `insider`), so authed API callers get full access.
	//
	// Corresponds with GET /api/v1/large-positions (the `ListLargePositions` operationId).
	ListLargePositions(ctx context.Context, params *ListLargePositionsParams, reqEditors ...RequestEditorFn) (*http.Response, error)

	// ListLargeTrades List large trades
	//
	// Returns recent large trades with signal scoring and persisted suspicion facts. Filter by size, category, trader grade, or persisted suspicion. Filters are applied before pagination, and every request uses SQL-backed limit + 1 pagination so has_more and next_cursor reflect the filtered result set. Cursor-paginated, newest first. Market categories come from provider-backed market_canonical identity. The response adds a top-level `data_quality` object beside `data`, grouping alert, trade, trader, ranking, market, and volume fields by their database writer. `whale_alerts.inserted_xid` is reported as unknown because it is a transaction identifier rather than a timestamp. Its stored clocks are part of the ETag; `meta` continues to hold transport cache facts. Pass since to poll for new trades: the answer holds only the trades recorded after the one you name, and with If-None-Match a poll that finds none is 304 with an empty body.
	//
	// Corresponds with GET /api/v1/large-trades (the `ListLargeTrades` operationId).
	ListLargeTrades(ctx context.Context, params *ListLargeTradesParams, reqEditors ...RequestEditorFn) (*http.Response, error)

	// ListLargeTradeHistory Replay historical large trades
	//
	// Returns historical large trades from local whale_alerts rows, not request-time provider fetches. Filter by condition_id, trader, category, minimum grade, persisted suspicion, platform, and RFC3339 from/to windows. All filters are pushed into SQL before LIMIT, every request uses SQL-backed limit + 1 pagination, and results are ordered newest first by traded_at desc, id desc. Metadata exposes local_replay source and best_effort completeness. POINT IN TIME: signal_score, trader.grade and the min_grade filter carry today's values on every row however old, so a backtest that selects by them selects wallets on what they did after the trade. The point-in-time fields are recorded_signal_score (from 2026-08-03T11:59Z; null before, and never backfilled, because the trader statistics it reads at insert were not kept for older rows) and trader.grade_at_trade with trader.grade_at_trade_status (from 2026-09-19T23:00Z; unknown before). CAPTURE RULES changed over the archive's life: rows before 2026-02-02 are sparse (at most a few hundred a month); from 2026-02-02 the floor was 3,000 USD (1.4% of rows through 2026-07-05 are smaller) and trades at any price were kept; from 2026-07-06 a trade is kept at 10,000 USD or more (1,000 USD in earnings markets) and only when priced below 0.97 (0.99 in earnings markets). Pass min_size=10000 for one size rule across the whole range; monthly row counts still follow the sports calendar. Until 2026-07-17 one match could be stored twice, once per wallet: from 2026-05-01 to 2026-07-17, 27.7% of rows at 10,000 USD or more share a transaction and market with another stored wallet, almost always a Yes buyer and a No buyer filled against each other. From 2026-07-18 a row is the taker's side only. Before 2026-05 the transaction hash is mostly absent, so the share cannot be measured there. From 2026-09-23 a fill must ALSO be at least 0.1% of its market's recorded traded volume, Polymarket's own share count, so a $10,000 print that lands in a market which has already traded tens of millions of shares is no longer kept; rows written before that date were not re-filtered. The response adds a top-level `data_quality` object beside `data`, grouping alert, trade, trader, ranking, market, and volume fields by their database writer. `whale_alerts.inserted_xid` is reported as unknown because it is a transaction identifier rather than a timestamp. Its stored clocks are part of the ETag; `meta` continues to hold transport cache facts.
	//
	// Corresponds with GET /api/v1/large-trades/history (the `ListLargeTradeHistory` operationId).
	ListLargeTradeHistory(ctx context.Context, params *ListLargeTradeHistoryParams, reqEditors ...RequestEditorFn) (*http.Response, error)

	// GetLargeTrade Get large trade by ID
	//
	// Returns one large trade by raw whale_alerts.id or the wt_-prefixed id emitted by list and history responses.
	//
	// Corresponds with GET /api/v1/large-trades/{id} (the `GetLargeTrade` operationId).
	GetLargeTrade(ctx context.Context, id string, params *GetLargeTradeParams, reqEditors ...RequestEditorFn) (*http.Response, error)

	// ListLargeTradeCounterpartyExecutions Page counterparty executions
	//
	// Returns a bounded execution page from the immutable snapshot emitted by large-trade detail. A stale or changed snapshot returns a cursor-expired error so clients restart from detail.
	//
	// Corresponds with GET /api/v1/large-trades/{id}/counterparties/executions (the `ListLargeTradeCounterpartyExecutions` operationId).
	ListLargeTradeCounterpartyExecutions(ctx context.Context, id string, params *ListLargeTradeCounterpartyExecutionsParams, reqEditors ...RequestEditorFn) (*http.Response, error)

	// ListLargeTradeCounterpartyMakers Page maker counterparties
	//
	// Returns a bounded maker-wallet page for one exact execution. Percentages keep the complete execution denominator across pages.
	//
	// Corresponds with GET /api/v1/large-trades/{id}/counterparties/executions/{execution_id}/makers (the `ListLargeTradeCounterpartyMakers` operationId).
	ListLargeTradeCounterpartyMakers(ctx context.Context, id string, executionId string, params *ListLargeTradeCounterpartyMakersParams, reqEditors ...RequestEditorFn) (*http.Response, error)

	// ListLeaderboard Get trader leaderboard
	//
	// Returns ranked traders (grades S/A/B) sorted by score descending. Supports cursor pagination and optional category/strategy filters.
	//
	// Corresponds with GET /api/v1/leaderboard (the `ListLeaderboard` operationId).
	ListLeaderboard(ctx context.Context, params *ListLeaderboardParams, reqEditors ...RequestEditorFn) (*http.Response, error)

	// ListTrendingWallets List trending wallets
	//
	// Returns wallets ranked by Polymarket weekly/monthly P&L (Polymarket-only discovery), with opaque page-cursor pagination. trending_pnl_usd and the by-PNL row order come from Polymarket's canonical leaderboard (data-api.polymarket.com/v2/leaderboard?time_period=week|month&sort_by=PNL), not a locally summed realized-leaf total. Each row also carries window volume, distinct markets, grade, hot-streak tier, and a shape-only daily P&L sparkline derived from the Polymarket user-pnl cumulative curve (per-day deltas; not guaranteed to sum to trending_pnl_usd). The response comes from a retained Redis board: meta.cached is true, and meta.cache_age_s reports the original board age when known (omitted when unknown). A backend read of a board at least 120 seconds old attempts a detached refresh; after a quiet spell a product board may be up to a day old. HTTP freshness ends at 120 seconds; max-age plus stale-while-revalidate cannot exceed the remaining original retention. Unknown age grants no cache window. A true cold read returns 503 (warming, retry-after), never a fabricated ranking. Polymarket-only: the read model filters platform = 'polymarket'. Cursors are bound to the effective limit, window and ranked-board generation; a changed board or request scope returns 400 with error.reason=cursor_expired, and legacy page-only cursors must restart from page one.
	//
	// Corresponds with GET /api/v1/leaderboard/trending (the `ListTrendingWallets` operationId).
	ListTrendingWallets(ctx context.Context, params *ListTrendingWalletsParams, reqEditors ...RequestEditorFn) (*http.Response, error)

	// GetMarketCandles Get market OHLC price candles
	//
	// Provider-first bucketed OHLC price candles for a market's outcome tokens, derived from the stored token_price_snapshots series (the same series the market-detail chart renders; covers open and resolved markets). Because the stored data is daily, a 1d bucket typically carries one point so its open/high/low/close all equal that day's close; 1w aggregates real OHLC across the observed daily closes. No intraday fidelity is fabricated. Query field names and recognized values are URL-decoded; duplicate recognized fields use the last value and unknown fields are ignored. When both bounds are present, from must be less than or equal to to; malformed or inverted bounds answer 400.
	//
	// Corresponds with GET /api/v1/market/{condition_id}/candles (the `GetMarketCandles` operationId).
	GetMarketCandles(ctx context.Context, conditionId string, params *GetMarketCandlesParams, reqEditors ...RequestEditorFn) (*http.Response, error)

	// GetMarketContextMarkdown Get market context (Markdown)
	//
	// Authenticated, self-contained Polymarket market evidence document. Renders the same typed data as the market snapshot with trust included: identity, outcome labels and tokens, cached quotes, liquidity, live sports, and per-source freshness or unavailable reasons. Provider text is encoded as indented JSON data. Accepts raw or mkt_-prefixed condition IDs. Unknown markets return 404. No ETag or conditional requests; use the snapshot JSON route for those.
	//
	// Corresponds with GET /api/v1/market/{condition_id}/context.md (the `GetMarketContextMarkdown` operationId).
	GetMarketContextMarkdown(ctx context.Context, conditionId string, params *GetMarketContextMarkdownParams, reqEditors ...RequestEditorFn) (*http.Response, error)

	// GetMarketFlow Get a market's flow and top positions
	//
	// Canonical since #16312; GET /api/v1/market/{condition_id}/intel is its deprecated alias and serves the same body under object market_intel. One market's flow and top positions: the signed flow of every tracked large trade in the window (net_flow_usd and its YES or NO direction), the large-trade count, gross buy and sell volumes, and the top five graded trader positions.
	//
	// Corresponds with GET /api/v1/market/{condition_id}/flow (the `GetMarketFlow` operationId).
	GetMarketFlow(ctx context.Context, conditionId string, params *GetMarketFlowParams, reqEditors ...RequestEditorFn) (*http.Response, error)

	// GetMarketHolders List a market's graded holders
	//
	// The graded holder roster of one market, the list a Pick of the Day shows for its market, for any Polymarket market: every S/A/B wallet with open shares on either outcome, from a complete provider holder scan, each with its shares, Polymarket's own currentValue for the leg, its grade, its win record in the market's category, and its badges. Both outcomes are listed; a wallet holding both is listed once on its net side. Ordered by current_value_usd DESC, then shares DESC, then address. The roster is computed at most once a minute per market and shared by every caller; a page is cut from that roster, so paging is cheap and `total` is exact. The route never widens past the graded cohort: `scan.wallet_count` reports every wallet the walk saw, graded or not. An incomplete, unstable or failed scan is a 503 with Retry-After, never a shorter list. A complete scan in which no S, A or B wallet holds either outcome is a 200 with an empty holders list and zero totals; retrying cannot change it. The cohort is S, A and B by the wallet's current grade (`traders.latest_grade`); a C, D, F or ungraded wallet is never listed here and appears only inside `scan.wallet_count`. A count here will not match GET /api/v1/positions for the same market, and the cohort is only one of three reasons: /positions reads the `wallet_positions` mirror rather than this live provider scan, and without a `wallet` its `min_size` defaults to 100 USD, so it drops the smaller legs this route keeps. Read a difference as all three, never as a grade count. This is current state and takes no as-of parameter: the roster is at most 60 s old over a provider walk at most 180 s old, and `scan.fetched_at` is the only timestamp on it. For a point-in-time roster, snapshot this route yourself on your own schedule; the one frozen roster the API serves is `display_holders` on GET /api/v1/pick-of-the-day, for that pick's market and backed side at publication.
	//
	// Corresponds with GET /api/v1/market/{condition_id}/holders (the `GetMarketHolders` operationId).
	GetMarketHolders(ctx context.Context, conditionId string, params *GetMarketHoldersParams, reqEditors ...RequestEditorFn) (*http.Response, error)

	// GetMarketIntel Get market intelligence
	//
	// Deprecated since #16312: use GET /api/v1/market/{condition_id}/flow, which serves the same body under object market_flow. This path stays live, keeps object market_intel, and answers with Deprecation and successor Link headers. One market's flow and top positions: the signed flow of every tracked large trade in the window (net_flow_usd and its YES or NO direction), the large-trade count, gross buy and sell volumes, and the top five graded trader positions.
	//
	// Corresponds with GET /api/v1/market/{condition_id}/intel (the `GetMarketIntel` operationId).
	//
	// Deprecated: this operation has been marked as deprecated upstream, but no `x-deprecated-reason` was set
	GetMarketIntel(ctx context.Context, conditionId string, params *GetMarketIntelParams, reqEditors ...RequestEditorFn) (*http.Response, error)

	// GetMarketSnapshot Get market live snapshot
	//
	// Provider-first market card snapshot with canonical identity, outcome labels, cached top-of-book when available, liquidity, live sports context, and explicit freshness/unavailable states.
	//
	// Corresponds with GET /api/v1/market/{condition_id}/snapshot (the `GetMarketSnapshot` operationId).
	GetMarketSnapshot(ctx context.Context, conditionId string, params *GetMarketSnapshotParams, reqEditors ...RequestEditorFn) (*http.Response, error)

	// ExploreMarkets Explore markets
	//
	// Browse whale-active titled markets with category, platform, status, and keyword filters. Explore is Polymarket-only: the platform parameter is accepted for backward-compatibility but every request returns Polymarket markets. Paginates visible discovery entries rather than raw market rows, returns live category/platform facets alongside grouped event clusters or standalone markets, and includes total on the first page only. Each grouped event contains at most 12 markets, retaining the selected representative within that cap. Categories come straight from provider metadata (Polymarket Gamma) and facets are flat value/label/count rows.
	//
	// Corresponds with GET /api/v1/markets/explore (the `ExploreMarkets` operationId).
	ExploreMarkets(ctx context.Context, params *ExploreMarketsParams, reqEditors ...RequestEditorFn) (*http.Response, error)

	// BatchGetMarketFlowWithBody Batch market flow
	//
	// Returns each market's flow and top positions for 1-25 raw provider condition_id values. Results preserve request order, duplicate inputs return duplicate rows, and each item is charged one batch item unit before execution. Do not pass prefixed mkt_ IDs; use market.condition_id from search or explore.
	//
	// Takes any type of body and a specified content type.
	//
	// Corresponds with POST /api/v1/markets/flow/batch (the `BatchGetMarketFlow` operationId).
	BatchGetMarketFlowWithBody(ctx context.Context, params *BatchGetMarketFlowParams, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*http.Response, error)

	// BatchGetMarketFlow Batch market flow
	//
	// Returns each market's flow and top positions for 1-25 raw provider condition_id values. Results preserve request order, duplicate inputs return duplicate rows, and each item is charged one batch item unit before execution. Do not pass prefixed mkt_ IDs; use market.condition_id from search or explore.
	//
	// Takes a body of the `application/json` content type.
	//
	// Corresponds with POST /api/v1/markets/flow/batch (the `BatchGetMarketFlow` operationId).
	BatchGetMarketFlow(ctx context.Context, params *BatchGetMarketFlowParams, body BatchGetMarketFlowJSONRequestBody, reqEditors ...RequestEditorFn) (*http.Response, error)

	// BatchGetMarketIntelWithBody Batch market intelligence
	//
	// Deprecated since #16312: use POST /api/v1/markets/flow/batch, which returns the same items under object market_flow_batch. This path stays live, keeps object market_intel_batch, and answers with Deprecation and successor Link headers. Returns each market's flow and top positions for 1-25 raw provider condition_id values. Results preserve request order, duplicate inputs return duplicate rows, and each item is charged one batch item unit before execution. Do not pass prefixed mkt_ IDs; use market.condition_id from search or explore.
	//
	// Takes any type of body and a specified content type.
	//
	// Corresponds with POST /api/v1/markets/intel/batch (the `BatchGetMarketIntel` operationId).
	//
	// Deprecated: this operation has been marked as deprecated upstream, but no `x-deprecated-reason` was set
	BatchGetMarketIntelWithBody(ctx context.Context, params *BatchGetMarketIntelParams, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*http.Response, error)

	// BatchGetMarketIntel Batch market intelligence
	//
	// Deprecated since #16312: use POST /api/v1/markets/flow/batch, which returns the same items under object market_flow_batch. This path stays live, keeps object market_intel_batch, and answers with Deprecation and successor Link headers. Returns each market's flow and top positions for 1-25 raw provider condition_id values. Results preserve request order, duplicate inputs return duplicate rows, and each item is charged one batch item unit before execution. Do not pass prefixed mkt_ IDs; use market.condition_id from search or explore.
	//
	// Takes a body of the `application/json` content type.
	//
	// Corresponds with POST /api/v1/markets/intel/batch (the `BatchGetMarketIntel` operationId).
	//
	// Deprecated: this operation has been marked as deprecated upstream, but no `x-deprecated-reason` was set
	BatchGetMarketIntel(ctx context.Context, params *BatchGetMarketIntelParams, body BatchGetMarketIntelJSONRequestBody, reqEditors ...RequestEditorFn) (*http.Response, error)

	// SearchMarkets Search markets
	//
	// Search prediction markets by keyword. Returns representative market matches with status, category, and platform metadata. Cursor pagination advances over grouped market results rather than raw sub-market rows.
	//
	// Corresponds with GET /api/v1/markets/search (the `SearchMarkets` operationId).
	SearchMarkets(ctx context.Context, params *SearchMarketsParams, reqEditors ...RequestEditorFn) (*http.Response, error)

	// ListSharpMoneyFlows List ranked sharp-money flows
	//
	// Canonical path for ranked sharp-money flows; /api/v1/markets/smart-money-flows remains live as a deprecated byte-identical alias of it. Ranks markets by absolute net S/A/B-grade whale flow over a requested timeframe. Use this discovery endpoint to answer where sharp money is flowing before drilling into a specific market with /api/v1/market/{condition_id}/flow. Pagination is anchored by an opaque cursor carrying the first-page as_of timestamp, normalized effective filters, ranking revision and aggregate collection revision; a changed filter or collection returns `cursor_expired` so callers request the first page again.
	//
	// Corresponds with GET /api/v1/markets/sharp-money-flows (the `ListSharpMoneyFlows` operationId).
	ListSharpMoneyFlows(ctx context.Context, params *ListSharpMoneyFlowsParams, reqEditors ...RequestEditorFn) (*http.Response, error)

	// ListSmartMoneyFlows List ranked sharp-money flows (deprecated alias)
	//
	// Ranks markets by absolute net S/A/B-grade whale flow over a requested timeframe. Use this discovery endpoint to answer where sharp money is flowing before drilling into a specific market with /api/v1/market/{condition_id}/flow. Pagination is anchored by an opaque cursor carrying the first-page as_of timestamp, normalized effective filters, ranking revision and aggregate collection revision; a changed filter or collection returns `cursor_expired` so callers request the first page again. Deprecated alias of GET /api/v1/markets/sharp-money-flows, kept live and never removed; every response carries `Deprecation: @1783276950` (RFC 9745, 2026-07-05T18:42:30Z) and a `Link` to the successor (`rel="successor-version"`) and to the versioning policy (`rel="deprecation"`). No `Sunset` header is sent because no removal is planned.
	//
	// Corresponds with GET /api/v1/markets/smart-money-flows (the `ListSmartMoneyFlows` operationId).
	//
	// Deprecated: this operation has been marked as deprecated upstream, but no `x-deprecated-reason` was set
	ListSmartMoneyFlows(ctx context.Context, params *ListSmartMoneyFlowsParams, reqEditors ...RequestEditorFn) (*http.Response, error)

	// OpenMcpEventStream MCP GET: no server-to-client stream (405)
	//
	// The MCP Streamable HTTP transport lets a client GET the endpoint to open a server-to-client text/event-stream, and lets the server answer 405 Method Not Allowed when it offers no such stream. This server sends no notifications, so an authenticated GET answers 405 with Allow: POST, a JSON-RPC error body (code -32004) and X-Mcp-Error-Code: -32004; a conforming client (the reference @modelcontextprotocol/sdk included) reads the 405 as no stream here and does not retry. Without a credential the GET answers 401 with the WWW-Authenticate challenge naming /.well-known/oauth-protected-resource/api/v1/mcp, which is where a client that has only run the public handshake learns to start the OAuth flow. Until 2026-09-22 an authenticated GET answered 200 text/event-stream and closed the body at once, which conforming clients reconnected to every second. Every JSON-RPC request goes over POST.
	//
	// Corresponds with GET /api/v1/mcp (the `OpenMcpEventStream` operationId).
	OpenMcpEventStream(ctx context.Context, params *OpenMcpEventStreamParams, reqEditors ...RequestEditorFn) (*http.Response, error)

	// CreateMcpJsonRpcResponseWithBody Remote MCP endpoint (JSON-RPC)
	//
	// Model Context Protocol (MCP) Streamable HTTP transport. Accepts one JSON-RPC 2.0 request or notification. ID-bearing initialize, ping, tools/list, and tools/call requests receive one same-ID JSON-RPC response. ID-less ping, notifications/initialized, and notifications/cancelled receive HTTP 202 with no body; other ID-less methods and unsolicited response messages receive HTTP 400 with no body. Unknown cancellation IDs are ignored; cancellation does not stop running tool work. Remote MCP exposes 46 read-only tools for public V1 read operations: get_leaderboard, get_trader, batch_get_traders, get_large_trades, get_large_trade, get_large_trades_history, get_whale_trades, get_whale_trade, get_whale_trades_history, get_pre_game_sides, get_pre_game_side_observations, get_sports_edge_signals, get_sports_edge_observations, list_games, get_game, get_market_flow, batch_get_market_flow, get_market_intel, batch_get_market_intel, get_smart_money_flows, get_sharp_money_flows, get_market_snapshot, get_suspicious_trades, get_suspicious_trade, get_insider_radar, get_insider_radar_flag, get_positions, get_position_timeline, get_position_timeline_by_id, search_markets, search_content, explore_markets, get_event_replay_since, list_webhooks, get_webhook, get_daily_report_snapshot, get_weekly_report_snapshot, get_monthly_report_snapshot, get_report, get_trader_export_snapshot, get_platforms, get_large_positions, get_trending_wallets, get_trader_pnl, get_pick_of_the_day, get_pick_of_the_day_archive. Webhook create/update/delete/verify/rotate operations are intentionally not exposed as remote MCP tools. The remote endpoint advertises tools only; it does not implement resources/list, resources/read, prompts/list, or prompts/get. Each tool dispatches to the matching /api/v1/* handler in-process so auth, rate limits, and payload shape match. initialize, notifications/initialized, ping and tools/list answer without a credential; tools/call (and any GET) need Authorization: Bearer <token> with an OAuth 2.1 access token (see the oauth2 security scheme; a tool outside the token's scopes returns isError) or an API key, and without one answer HTTP 401 with a WWW-Authenticate challenge whose resource_metadata names the RFC 9728 document at /.well-known/oauth-protected-resource/api/v1/mcp. A key in a ?token= query parameter is rejected on every authenticated route (the public routes ignore it) with 401 invalid_api_key and error.reason api_key_in_query, because URLs land in shell history, browser history, and logs; a client that can only take a URL can run the @0xinsider/mcp stdio package. Mcp-Session-Id is minted on initialize and echoed on every response. Origin header, when present, is validated against the 0xinsider + localhost allowlist. tools/call arguments are validated against the tool's advertised inputSchema before anything runs: a non-object, an unknown key, a wrong type, an out-of-range number, a value outside an enum or an argument combination outside a oneOf answers a tool result with isError true whose text names the field, never a query built from the arguments that fit. Every tools/call result carries the REST envelope's meta verbatim (request_id, cached, cache_age_s, cost, and the route's provenance such as source and completeness on get_whale_trades_history or ranking_source, directional_source and the category_skill_* fields on get_sports_edge_signals) as structuredContent.meta beside the payload's own keys, and a tool failure carries structuredContent.error with the REST error fields verbatim (code, reason, param, doc_url, retry_at) plus retry_after_seconds, request_id and status, beside its text. The MCP-Protocol-Version request header is checked on every POST and GET: a value outside 2025-11-25, 2025-06-18, 2025-03-26 and 2024-11-05 answers HTTP 400 with JSON-RPC error -32600 before the body is read; an absent header is served as 2025-03-26, the transport specification's compatibility default. Browser preflight allows the header.
	//
	// Takes any type of body and a specified content type.
	//
	// Corresponds with POST /api/v1/mcp (the `CreateMcpJsonRpcResponse` operationId).
	CreateMcpJsonRpcResponseWithBody(ctx context.Context, params *CreateMcpJsonRpcResponseParams, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*http.Response, error)

	// CreateMcpJsonRpcResponse Remote MCP endpoint (JSON-RPC)
	//
	// Model Context Protocol (MCP) Streamable HTTP transport. Accepts one JSON-RPC 2.0 request or notification. ID-bearing initialize, ping, tools/list, and tools/call requests receive one same-ID JSON-RPC response. ID-less ping, notifications/initialized, and notifications/cancelled receive HTTP 202 with no body; other ID-less methods and unsolicited response messages receive HTTP 400 with no body. Unknown cancellation IDs are ignored; cancellation does not stop running tool work. Remote MCP exposes 46 read-only tools for public V1 read operations: get_leaderboard, get_trader, batch_get_traders, get_large_trades, get_large_trade, get_large_trades_history, get_whale_trades, get_whale_trade, get_whale_trades_history, get_pre_game_sides, get_pre_game_side_observations, get_sports_edge_signals, get_sports_edge_observations, list_games, get_game, get_market_flow, batch_get_market_flow, get_market_intel, batch_get_market_intel, get_smart_money_flows, get_sharp_money_flows, get_market_snapshot, get_suspicious_trades, get_suspicious_trade, get_insider_radar, get_insider_radar_flag, get_positions, get_position_timeline, get_position_timeline_by_id, search_markets, search_content, explore_markets, get_event_replay_since, list_webhooks, get_webhook, get_daily_report_snapshot, get_weekly_report_snapshot, get_monthly_report_snapshot, get_report, get_trader_export_snapshot, get_platforms, get_large_positions, get_trending_wallets, get_trader_pnl, get_pick_of_the_day, get_pick_of_the_day_archive. Webhook create/update/delete/verify/rotate operations are intentionally not exposed as remote MCP tools. The remote endpoint advertises tools only; it does not implement resources/list, resources/read, prompts/list, or prompts/get. Each tool dispatches to the matching /api/v1/* handler in-process so auth, rate limits, and payload shape match. initialize, notifications/initialized, ping and tools/list answer without a credential; tools/call (and any GET) need Authorization: Bearer <token> with an OAuth 2.1 access token (see the oauth2 security scheme; a tool outside the token's scopes returns isError) or an API key, and without one answer HTTP 401 with a WWW-Authenticate challenge whose resource_metadata names the RFC 9728 document at /.well-known/oauth-protected-resource/api/v1/mcp. A key in a ?token= query parameter is rejected on every authenticated route (the public routes ignore it) with 401 invalid_api_key and error.reason api_key_in_query, because URLs land in shell history, browser history, and logs; a client that can only take a URL can run the @0xinsider/mcp stdio package. Mcp-Session-Id is minted on initialize and echoed on every response. Origin header, when present, is validated against the 0xinsider + localhost allowlist. tools/call arguments are validated against the tool's advertised inputSchema before anything runs: a non-object, an unknown key, a wrong type, an out-of-range number, a value outside an enum or an argument combination outside a oneOf answers a tool result with isError true whose text names the field, never a query built from the arguments that fit. Every tools/call result carries the REST envelope's meta verbatim (request_id, cached, cache_age_s, cost, and the route's provenance such as source and completeness on get_whale_trades_history or ranking_source, directional_source and the category_skill_* fields on get_sports_edge_signals) as structuredContent.meta beside the payload's own keys, and a tool failure carries structuredContent.error with the REST error fields verbatim (code, reason, param, doc_url, retry_at) plus retry_after_seconds, request_id and status, beside its text. The MCP-Protocol-Version request header is checked on every POST and GET: a value outside 2025-11-25, 2025-06-18, 2025-03-26 and 2024-11-05 answers HTTP 400 with JSON-RPC error -32600 before the body is read; an absent header is served as 2025-03-26, the transport specification's compatibility default. Browser preflight allows the header.
	//
	// Takes a body of the `application/json` content type.
	//
	// Corresponds with POST /api/v1/mcp (the `CreateMcpJsonRpcResponse` operationId).
	CreateMcpJsonRpcResponse(ctx context.Context, params *CreateMcpJsonRpcResponseParams, body CreateMcpJsonRpcResponseJSONRequestBody, reqEditors ...RequestEditorFn) (*http.Response, error)

	// GetAccountIdentity Identify the authenticated account and credential
	//
	// Returns caller-owned account and credential IDs, credential validity, paid-data entitlement and approved scopes. Null scopes mean full legacy developer-key access. Valid credentials can use this control-plane diagnostic path after paid access lapses; data routes still require active paid access. OAuth grants and named integration keys need read scope. Does not return credentials, payment details or personal contact details.
	//
	// Corresponds with GET /api/v1/me (the `GetAccountIdentity` operationId).
	GetAccountIdentity(ctx context.Context, params *GetAccountIdentityParams, reqEditors ...RequestEditorFn) (*http.Response, error)

	// RedirectApiOpenapiSpec Redirect to the canonical OpenAPI spec
	//
	// Unauthenticated API-origin compatibility redirect to the canonical web-origin OpenAPI JSON document at https://0xinsider.com/api/v1/openapi.json.
	//
	// Corresponds with GET /api/v1/openapi.json (the `RedirectApiOpenapiSpec` operationId).
	RedirectApiOpenapiSpec(ctx context.Context, params *RedirectApiOpenapiSpecParams, reqEditors ...RequestEditorFn) (*http.Response, error)

	// GetPickOfTheDay Get today's Pick of the Day
	//
	// Returns the published picks for the current product day. Pro tier.
	//
	// `picks` holds up to ten ranked picks. Each pick carries the backed side, the pre-game price, the flat stake (`stake_usd`, 1000) and its return (`return_usd`; `return_per_100` keeps the literal $100 basis), the sharp-money holders, the grade, and a thesis. The price is frozen before kickoff. A prior day's pick never appears here; read the archive for it.
	//
	// `scheduled_picks` lists same-day slots that are selected but not released yet. Each slot exposes only `pick_rank`, `release_at`, and `kickoff`.
	//
	// When no pick is published for the current product day, the endpoint returns `404` with `error.code="not_found"` and `error.reason="pick_not_released"`. Branch on the reason; the code is frozen. The `404` is a schedule, not an outage.
	//
	// Do not poll. Read `Retry-After` or `error.retry_at` and schedule one request for that instant. The `404` response below says how the instant is chosen.
	//
	// Corresponds with GET /api/v1/pick-of-the-day (the `GetPickOfTheDay` operationId).
	GetPickOfTheDay(ctx context.Context, params *GetPickOfTheDayParams, reqEditors ...RequestEditorFn) (*http.Response, error)

	// GetPickOfTheDayArchive Get the Pick of the Day track record
	//
	// Returns every published pick with its outcome, unit score, closing-line value, and the rolling hit rate.
	//
	// Resolved picks are public. A pending pick's backed side appears only for an authenticated Pro key.
	//
	// Each row carries a CLV value or the reason it was not measured. Coverage divides measured rows by resolved rows published before kickoff. A post-kickoff publication is `not_applicable`.
	//
	// Corresponds with GET /api/v1/pick-of-the-day/archive (the `GetPickOfTheDayArchive` operationId).
	GetPickOfTheDayArchive(ctx context.Context, params *GetPickOfTheDayArchiveParams, reqEditors ...RequestEditorFn) (*http.Response, error)

	// GetPickOfTheDayLedger Get the Pick of the Day commitment ledger
	//
	// Returns the pre-game commitment for every published pick, so the public track record can be checked by someone who was not watching when the pick dropped.
	//
	// One entry per (pick_date, pick_rank), ascending by pick_date then pick_rank, in one of three states. `sealed` is a live pick: the hash, the algorithm, the seal instant and the kickoff, and nothing that states a side or a price. `opened` is a settled pick: the nonce and the exact canonical payload the hash was taken over. `uncommitted` is a pick with no commitment -- published before the scheme existed, or one that reached kickoff unsealed -- named rather than omitted.
	//
	// To verify an opened entry: serialize nothing. Take the bytes of the `payload` object exactly as received, append the `commitment_nonce` decoded from hex, and sha256 the result; it equals `commitment_hash`. The payload is canonical JSON -- keys sorted by UTF-8 byte value, no insignificant whitespace, decimals as strings at full stored precision, timestamps whole-second UTC with a literal Z -- and it is served byte for byte as it was hashed.
	//
	// This is a proof contract, not the archive's display contract: nothing here is formatted for rendering, so an entry changes only when the pick does. A commitment is never written after kickoff and never rewritten by an outcome correction; `resolved_at` moving under an unchanged `commitment_hash` is a corrected market re-mapping an already-settled pick.
	//
	// Corresponds with GET /api/v1/pick-of-the-day/ledger (the `GetPickOfTheDayLedger` operationId).
	GetPickOfTheDayLedger(ctx context.Context, params *GetPickOfTheDayLedgerParams, reqEditors ...RequestEditorFn) (*http.Response, error)

	// GetPlatforms Get platform capability matrix
	//
	// Deprecated since #16315: use GET /api/v1/coverage, which serves the same body. This path stays live and answers with Deprecation and successor Link headers. Unauthenticated discovery endpoint that declares which V1 data surfaces the API serves for Polymarket, the one venue it covers. Every capability reports supported.
	//
	// Corresponds with GET /api/v1/platforms (the `GetPlatforms` operationId).
	//
	// Deprecated: this operation has been marked as deprecated upstream, but no `x-deprecated-reason` was set
	GetPlatforms(ctx context.Context, params *GetPlatformsParams, reqEditors ...RequestEditorFn) (*http.Response, error)

	// ListPositions List current positions (positions-board feed)
	//
	// Returns the current positions-board feed backed by the wallet_positions mirror. Ordered by current_value_usd DESC with deterministic (wallet, condition_id, outcome_index) tiebreakers. Pre-reconcile rows (current_value_usd IS NULL) are excluded. Cursor-paginated. Every filter pushes into SQL. Deep cursor pages cost the same as the first page: the value bounds and the cursor are index conditions, so a page never rescans the feed from the top. With wallet, the same feed is read for one wallet or a book of up to 25 wallets from each wallet's own ordered index range, so the pages are that wallet's complete reconciled binary open positions and the cost is the page, never the board. min_size defaults to 100 on the board read, so a request with no wallet and no min_size drops positions valued under 100 USD; with wallet it defaults to 0 instead. Send min_size=0 to include every reconciled position. What a wallet read does not return: positions with shares at 0 (closed), rows the reconciler has not valued yet (current_value_usd IS NULL), and non-binary outcomes; per-row last_reconciled_at and freshness say how old each valuation is. Each row also carries additive `exact` source atoms as decimal strings with unit, scale and basis metadata; parse those values with decimal-safe arithmetic and do not reconstruct them from the display-safe numeric fields. The response adds a top-level `data_quality` object beside `data`, with positions, trader, and market groups owned by `wallet_positions.last_reconciled_at|updated_at`, `traders.last_synced`, and `market_canonical.last_refreshed_at`. Its stored clocks are part of the ETag; `meta` continues to hold transport cache facts.
	//
	// Corresponds with GET /api/v1/positions (the `ListPositions` operationId).
	ListPositions(ctx context.Context, params *ListPositionsParams, reqEditors ...RequestEditorFn) (*http.Response, error)

	// GetReports Unified report snapshot (granularity selector)
	//
	// Unified convenience route (#4975) that consolidates the three singular report routes. Dispatches to the exact per-granularity cap (daily 50, weekly 100, monthly 200) and date window the legacy /api/v1/reports/{daily,weekly,monthly} routes use, so the response body is byte-identical to the matching legacy route for the same period. An ISO weekly period is a durable canonical snapshot; an explicit weekly from,to pair is an exact ephemeral range limited to 31 inclusive UTC days and never creates a persisted snapshot identity. A wider explicit range returns 400 invalid_query. The three legacy routes stay live. Also reachable via the MCP get_report selector.
	//
	// Corresponds with GET /api/v1/reports (the `GetReports` operationId).
	GetReports(ctx context.Context, params *GetReportsParams, reqEditors ...RequestEditorFn) (*http.Response, error)

	// GetDailyReportSnapshot Daily report snapshot
	//
	// Returns a dated daily whale-activity report snapshot with source_range, snapshot.status, completeness, and reconciliation metadata. Report whale volume is local whale-alert activity volume, not provider lifetime trader volume.
	//
	// Corresponds with GET /api/v1/reports/daily (the `GetDailyReportSnapshot` operationId).
	GetDailyReportSnapshot(ctx context.Context, params *GetDailyReportSnapshotParams, reqEditors ...RequestEditorFn) (*http.Response, error)

	// GetMonthlyReportSnapshot Monthly report snapshot
	//
	// Returns a UTC monthly whale-activity report snapshot with source_range, completeness, and reconciliation metadata.
	//
	// Corresponds with GET /api/v1/reports/monthly (the `GetMonthlyReportSnapshot` operationId).
	GetMonthlyReportSnapshot(ctx context.Context, params *GetMonthlyReportSnapshotParams, reqEditors ...RequestEditorFn) (*http.Response, error)

	// GetWeeklyReportSnapshot Weekly report snapshot
	//
	// Returns a weekly whale-activity report snapshot. Pass an ISO YYYY-WW token for a durable canonical snapshot, or an exact from/to UTC range of at most 31 inclusive days for an ephemeral response. The response identifies closed ranges as final and current ranges as rolling.
	//
	// Corresponds with GET /api/v1/reports/weekly (the `GetWeeklyReportSnapshot` operationId).
	GetWeeklyReportSnapshot(ctx context.Context, params *GetWeeklyReportSnapshotParams, reqEditors ...RequestEditorFn) (*http.Response, error)

	// ListSportsEdgeObservations List observation-only sports-edge cohorts
	//
	// Deprecated since #16310: use GET /api/v1/sports/pre-game-side-observations, which serves the same body. This path stays live and answers with Deprecation and successor Link headers. Pro-tier. Measures three explicitly observation-only Polymarket sports cohorts without changing or feeding GET /api/v1/sports-edge-signals: wider_holder measures pre-game holder piles outside the funded route's exact raw signals admission, including recent-flow rows rejected by its event, bucket, or total caps; in_play admits provider-confirmed live games and fails closed when the provider live-board snapshot is stale or unavailable or holder/directional evidence is stale or unavailable; emerging_pile is an additive post-compute projection of wider_holder rows with finite sharp_pct in [0.75, 0.85), holder_scan_complete=true, and a kickoff after its pinned projection cutoff. emerging_pile overlaps wider_holder, remains attributed to that source terminal and denominator, and is not holder-arrival history. Every row carries observation_only=true, provider/holder freshness and completeness fields, and the response carries a required snapshot-wide operational/unknown-completeness degraded boolean plus an accountable per-sport funnel over a closed 25-value terminal-reason vocabulary. Omitted or blank category selects all 14 registered observation sport buckets, including Table Tennis and Pickleball; those two remain outside the funded sports projection. All category and all-sports cache scopes share one global observation provider-work admission, so distinct scope keys cannot multiply concurrent provider fanout. One absolute ~25s compute deadline covers cache coordination, board/universe and primary-signals membership reads, holder cache/provider work, price/metadata evaluation, and directional reads, leaving ~5s below the public router timeout for funnel reconciliation, cleanup, and response transport. A shared pre-holder stage deadline jointly bounds those database reads and board reconciliation to the smaller of 12s or half of the absolute budget remaining when that stage starts, preserving holder/post-holder opportunity; board reads use bounded fair waves and cold holder admission gives each represented canonical sport one row before any sport repeats. A request that finds its scope's refresh in flight waits for that snapshot, and a scope refresh waits for another scope's global provider-work admission while at least ~15s of the absolute deadline remain. Absolute deadline exhaustion before a usable cache, provider-work admission still held at that ~15s bound, an in-flight refresh that ends without publishing while another waiting request takes it over, or pre-holder stage expiry before a usable stored universe or primary-signals membership result returns 503 with error.reason=read_model_warming. Category-resolution SQL errors, Redis coordination failures, and primary-signals membership query failures return 500 internal_error instead. With no usable stored universe, a replica-side observation-universe refresh failure (a recovery conflict, its statement timeout, a busy pool, or a replica marked down) returns the same 503 read_model_warming; any other observation-universe SQL error, or an invalid compact result, still returns 500 internal_error. Once a usable universe exists, later operational or unknown-completeness board, holder, or price/metadata failures are retained as explicit terminal reasons in a degraded 200 response with degraded=true: 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 an attempted holder-provider failure, and holder_deadline_unavailable is holder-stage deadline exhaustion. Directional incompleteness is cohort-specific: a wider_holder row remains emitted with terminal wider_holder_emitted and directional_status=unavailable, while an in_play row fails closed with terminal in_play_directional_unavailable. capacity_limited records intentional bounded provider-work admission in the funnel and does not by itself set degraded=true. Healthy wider_holder requests may reuse a snapshot for ~180s; healthy emerging_pile requests may use the same snapshot. in_play never serves a cached observation snapshot older than ~30s, and degraded snapshots use ~30s. The ETag is a weak semantic validator over the stable page payload, including next_cursor page position; request-specific meta excluded; the opaque emerging_pile projection cutoff in next_cursor is not itself a validator input.
	//
	// Corresponds with GET /api/v1/sports-edge-observations (the `ListSportsEdgeObservations` operationId).
	//
	// Deprecated: this operation has been marked as deprecated upstream, but no `x-deprecated-reason` was set
	ListSportsEdgeObservations(ctx context.Context, params *ListSportsEdgeObservationsParams, reqEditors ...RequestEditorFn) (*http.Response, error)

	// ListSportsEdgeSignals List ranked pre-game sports-edge signals
	//
	// Deprecated since #16310: use GET /api/v1/sports/pre-game-sides, which serves the same body. This path stays live and answers with Deprecation and successor Link headers. Pro-tier. Ranked list of upcoming pre-game sports markets (moneyline + props) where graded (S/A/B) sharp money is piled on one side, each row carrying signal_created_at (the UTC time its immutable snapshot was computed), the piled side, its grade distribution, kickoff, piled-side Polymarket CLOB token id, and required shadow-only category_skill evidence. signal_created_at is not provider market creation time or request time. Eligibility and ranking remain the funded FLOW/HOLDER contract; category skill cannot change membership, order, rank, cursor, routing, or sizing. meta exposes explicit category source/model/status plus independently computed pre/post SHA-256 base-vector hashes that must match. Served from a shared server-side snapshot cache (healthy TTL ~180s, degraded ~30s) computed once per category at the maximum 48h horizon and filtered at request time; the cursor pins to that snapshot and a stale cursor is rejected. Polymarket only; source coverage is partial first-observed post-launch Goldsky primary taker BUY fills admitted by the canonical whale-alert thresholds, never reconstructed history. Deliberately not the editorial Pick of the Day ranker.
	//
	// Corresponds with GET /api/v1/sports-edge-signals (the `ListSportsEdgeSignals` operationId).
	//
	// Deprecated: this operation has been marked as deprecated upstream, but no `x-deprecated-reason` was set
	ListSportsEdgeSignals(ctx context.Context, params *ListSportsEdgeSignalsParams, reqEditors ...RequestEditorFn) (*http.Response, error)

	// ListPreGameSideObservations List observation-only pre-game side cohorts
	//
	// Canonical since #16310; GET /api/v1/sports-edge-observations is its deprecated alias and serves the same body. Pro-tier. Measures three explicitly observation-only Polymarket sports cohorts without changing or feeding GET /api/v1/sports/pre-game-sides: wider_holder measures pre-game holder piles outside the funded route's exact raw signals admission, including recent-flow rows rejected by its event, bucket, or total caps; in_play admits provider-confirmed live games and fails closed when the provider live-board snapshot is stale or unavailable or holder/directional evidence is stale or unavailable; emerging_pile is an additive post-compute projection of wider_holder rows with finite sharp_pct in [0.75, 0.85), holder_scan_complete=true, and a kickoff after its pinned projection cutoff. emerging_pile overlaps wider_holder, remains attributed to that source terminal and denominator, and is not holder-arrival history. Every row carries observation_only=true, provider/holder freshness and completeness fields, and the response carries a required snapshot-wide operational/unknown-completeness degraded boolean plus an accountable per-sport funnel over a closed 25-value terminal-reason vocabulary. Omitted or blank category selects all 14 registered observation sport buckets, including Table Tennis and Pickleball; those two remain outside the funded sports projection. All category and all-sports cache scopes share one global observation provider-work admission, so distinct scope keys cannot multiply concurrent provider fanout. One absolute ~25s compute deadline covers cache coordination, board/universe and primary-signals membership reads, holder cache/provider work, price/metadata evaluation, and directional reads, leaving ~5s below the public router timeout for funnel reconciliation, cleanup, and response transport. A shared pre-holder stage deadline jointly bounds those database reads and board reconciliation to the smaller of 12s or half of the absolute budget remaining when that stage starts, preserving holder/post-holder opportunity; board reads use bounded fair waves and cold holder admission gives each represented canonical sport one row before any sport repeats. A request that finds its scope's refresh in flight waits for that snapshot, and a scope refresh waits for another scope's global provider-work admission while at least ~15s of the absolute deadline remain. Absolute deadline exhaustion before a usable cache, provider-work admission still held at that ~15s bound, an in-flight refresh that ends without publishing while another waiting request takes it over, or pre-holder stage expiry before a usable stored universe or primary-signals membership result returns 503 with error.reason=read_model_warming. Category-resolution SQL errors, Redis coordination failures, and primary-signals membership query failures return 500 internal_error instead. With no usable stored universe, a replica-side observation-universe refresh failure (a recovery conflict, its statement timeout, a busy pool, or a replica marked down) returns the same 503 read_model_warming; any other observation-universe SQL error, or an invalid compact result, still returns 500 internal_error. Once a usable universe exists, later operational or unknown-completeness board, holder, or price/metadata failures are retained as explicit terminal reasons in a degraded 200 response with degraded=true: 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 an attempted holder-provider failure, and holder_deadline_unavailable is holder-stage deadline exhaustion. Directional incompleteness is cohort-specific: a wider_holder row remains emitted with terminal wider_holder_emitted and directional_status=unavailable, while an in_play row fails closed with terminal in_play_directional_unavailable. capacity_limited records intentional bounded provider-work admission in the funnel and does not by itself set degraded=true. Healthy wider_holder requests may reuse a snapshot for ~180s; healthy emerging_pile requests may use the same snapshot. in_play never serves a cached observation snapshot older than ~30s, and degraded snapshots use ~30s. The ETag is a weak semantic validator over the stable page payload, including next_cursor page position; request-specific meta excluded; the opaque emerging_pile projection cutoff in next_cursor is not itself a validator input. Rows carry the canonical field names side, backing_score and side_share; the older piled_side, conviction_score and smart_score keys carry the same values and stay on the wire.
	//
	// Corresponds with GET /api/v1/sports/pre-game-side-observations (the `ListPreGameSideObservations` operationId).
	ListPreGameSideObservations(ctx context.Context, params *ListPreGameSideObservationsParams, reqEditors ...RequestEditorFn) (*http.Response, error)

	// ListPreGameSides List upcoming games ranked by the side profitable wallets hold
	//
	// Canonical since #16310; GET /api/v1/sports-edge-signals is its deprecated alias and serves the same body. Pro-tier. Ranked list of upcoming pre-game sports markets (moneyline + props) where graded (S/A/B) sharp money is piled on one side, each row carrying signal_created_at (the UTC time its immutable snapshot was computed), the piled side, its grade distribution, kickoff, piled-side Polymarket CLOB token id, and required shadow-only category_skill evidence. signal_created_at is not provider market creation time or request time. Eligibility and ranking remain the funded FLOW/HOLDER contract; category skill cannot change membership, order, rank, cursor, routing, or sizing. meta exposes explicit category source/model/status plus independently computed pre/post SHA-256 base-vector hashes that must match. Served from a shared server-side snapshot cache (healthy TTL ~180s, degraded ~30s) computed once per category at the maximum 48h horizon and filtered at request time; the cursor pins to that snapshot and a stale cursor is rejected. Polymarket only; source coverage is partial first-observed post-launch Goldsky primary taker BUY fills admitted by the canonical whale-alert thresholds, never reconstructed history. Deliberately not the editorial Pick of the Day ranker. Rows carry the canonical field names side, ranked_at, backing_score and side_share; the older piled_side, signal_created_at, conviction_score and smart_score keys carry the same values and stay on the wire.
	//
	// Corresponds with GET /api/v1/sports/pre-game-sides (the `ListPreGameSides` operationId).
	ListPreGameSides(ctx context.Context, params *ListPreGameSidesParams, reqEditors ...RequestEditorFn) (*http.Response, error)

	// GetStream Resumable real-time event stream (SSE)
	//
	// Server-Sent Events stream of the live feed envelopes the platform already broadcasts (whale-trade pulses and other public/Pro feed events). Forwards the same backend-owned envelope shape as the internal feed; no provider data is recomputed. Authenticated via the oxi_sk Bearer key like every other /api/v1 endpoint, and limited to a small number of concurrent connections per API key and a cluster-wide ceiling across all keys (HTTP 429 with Retry-After when either cap is exceeded; HTTP 503 with Retry-After if a required Redis service is briefly unavailable). Each delivered frame carries an SSE id from one cluster-shared sequence that remains valid across backend replicas and process restarts. Reconnect with the Last-Event-ID header (or the last_event_id / seq query fallback) to replay the missed window before resuming live. When the requested resume point is older than the retained window, ahead of the current sequence, separated from live delivery by an uncovered gap, or the server's sequence counter restarts mid-stream (a completeness.status of truncated, lagged, or reset), the stream emits a resync marker event (event: resync) instead of silently skipping frames. Idle connections receive periodic ': keep-alive' comment lines. This is a long-lived response: keep the connection open and read frames as they arrive. Authorization is re-checked for as long as the stream is open: every 30 seconds the server re-resolves the key the stream was opened with, so a key that is revoked, expired or rotated, or an account that is deleted, locked or no longer subscribed, ends the stream within 40 seconds (30 seconds plus the credential cache's 10-second bound) with one terminal 'event: error' frame and then closes the connection. The frame's JSON is { type: 'error', error: <the same error object a reconnect is answered with: code, message, doc_url, reason, retry_at>, retry: <boolean> }; retry is false for every credential and account refusal (a reconnect is refused with the same 401, 402, 403 or 423), and true only when the credential store stopped answering (code database_unavailable, after 90 seconds without a confirmed check), in which case reconnect after the error's retry_at with Last-Event-ID set to the frame's id to resume.
	//
	// Corresponds with GET /api/v1/stream (the `GetStream` operationId).
	GetStream(ctx context.Context, params *GetStreamParams, reqEditors ...RequestEditorFn) (*http.Response, error)

	// ListSuspiciousTrades Get suspicious trades
	//
	// Stored trades whose recorded suspicion score meets the live flag threshold. Evidence contains the scorer's stored signals. Cursor-paginated by suspicion score. mode=live (default) uses fresh cached pages; mode=stable pins pagination to one published scoring generation and returns cursor_expired when scores or filters change. Canonical since 2026-09-23; GET /api/v1/insider-radar is its deprecated alias.
	//
	// Corresponds with GET /api/v1/suspicious-trades (the `ListSuspiciousTrades` operationId).
	ListSuspiciousTrades(ctx context.Context, params *ListSuspiciousTradesParams, reqEditors ...RequestEditorFn) (*http.Response, error)

	// GetSuspiciousTrade Get suspicious trade by ID
	//
	// Returns one suspicious trade by raw whale_alerts.id or the rf_-prefixed id emitted by list responses. Canonical since 2026-09-23; GET /api/v1/insider-radar/{id} is its deprecated alias and keeps answering object: radar_flag.
	//
	// Corresponds with GET /api/v1/suspicious-trades/{id} (the `GetSuspiciousTrade` operationId).
	GetSuspiciousTrade(ctx context.Context, id string, params *GetSuspiciousTradeParams, reqEditors ...RequestEditorFn) (*http.Response, error)

	// GetTrader Get trader
	//
	// Returns a trader's grade (S through F; ranked about 95% by realized profit, with calibration, track record, and consistency as a tie-breaker and proven-trader guardrails), P&L, win rate, and optional strategy/category data. The path accepts either an Ethereum wallet address, a known trader username, or a trd_-prefixed trader ID emitted by this API. A wallet address this API does not track yet returns 200 with sync_status "unknown" instead of 404, so it can be polled. A value that is not a wallet address and matches no username or trader ID this API knows returns 404 not_found with error.param address; it is never echoed back as a trader address. The additive `pnl.exact.realized` and `stats.exact.total_volume` fields carry decimal strings from verified source atoms with unit, scale and basis metadata; parse them with decimal-safe arithmetic and keep the existing numeric twins for display.
	//
	// Corresponds with GET /api/v1/trader/{address} (the `GetTrader` operationId).
	GetTrader(ctx context.Context, address string, params *GetTraderParams, reqEditors ...RequestEditorFn) (*http.Response, error)

	// GetTraderCategoryRecords Get trader category win records
	//
	// Returns one wallet's win record in every canonical category it has a settled market in: wins, decided (wins plus losses) and the rate, per category, busiest category first. These are the same counts the Pick of the Day holder chips carry. The Esports record also carries games: the wallet's record in each esports title it has a settled market in (LoL, CS2, Dota 2, Valorant, ...), the same per-game record the holder chips and GET /api/v1/market/{condition_id}/holders name in category_win_rate_game, with the same counts, floor and status rule; the Esports row itself stays the whole bucket, which is what a chip falls back to when a game record is thin. The basis is every settled market at any position size, which is NOT the basis of category_strengths on GET /api/v1/trader/{address}?expand=categories: that breakdown keeps the 20 USD notional floor and the entry-price rule its ranks depend on, so the two legitimately differ, in both directions. Measured on production 2026-09-22 over the 122,497 wallet-category pairs with at least 20 decided markets on both bases: the floored rate was higher in 56.5% of pairs, lower in 34.5% and equal in 9.0%, median +0.6 points, p10 -4.6, p90 +9.8, and 14.0% of pairs differ by 10 points or more. Neither rate corrects the other. The difference is not only small positions: on a 1-in-250 wallet sample the same day, admitted markets won 56.6% while markets dropped by the notional floor alone won 45.2% and markets dropped by the entry-price rule alone won 48.7%. The two tables also run on different clocks, this one rebuilt daily and that breakdown updated incrementally, so a same-day read can differ on timing alone. A category or game with fewer than min_decided_for_win_rate decided markets keeps its counts and returns win_rate null with status not_enough_data, so a caller can apply its own sample rule. A category the wallet has no settled market in is omitted entirely, and so is a game: an absent entry means no record, never a 0% record. A resolved trader with no settled market returns an empty records array (HTTP 200); an unknown address returns 404.
	//
	// Corresponds with GET /api/v1/trader/{address}/categories (the `GetTraderCategoryRecords` operationId).
	GetTraderCategoryRecords(ctx context.Context, address string, params *GetTraderCategoryRecordsParams, reqEditors ...RequestEditorFn) (*http.Response, error)

	// GetTraderContext Get trader context (JSON)
	//
	// Returns a single structured context object for one trader: the full trader profile (same shape as GET /api/v1/trader/{address}) plus a position_summary (sync coverage and realized/unrealized P&L rollups, with an as_of open-position freshness clock), the data_as_of freshness timestamp (the open-position data's latest /positions snapshot, else last completed sync; the snapshot advances only open positions, so resolved counts and win rate still date to the last full sync; native realized P&L follows its accounting snapshot), and a freshness_note describing the point-in-time snapshot semantics. The path accepts an Ethereum wallet address (0x...), a known trader username, or a trd_-prefixed trader ID emitted by this API. position_summary is omitted when the trader is not in the local database or native net economics is unavailable; realized fields remain numeric when present; a wallet address this API does not track yet returns 200 with sync_status 'unknown' on the nested trader (no 404), while a value that is not a wallet address and matches no username or trader ID this API knows returns 404 not_found with error.param address. Append .md to the path for the Markdown rendering.
	//
	// Corresponds with GET /api/v1/trader/{address}/context (the `GetTraderContext` operationId).
	GetTraderContext(ctx context.Context, address string, params *GetTraderContextParams, reqEditors ...RequestEditorFn) (*http.Response, error)

	// GetTraderContextMarkdown Get trader context (Markdown)
	//
	// Returns a single human- and LLM-readable Markdown briefing for one trader: identity, grade, P&L, position coverage, and freshness. The path accepts an Ethereum wallet address (0x...), a known trader username, or a trd_-prefixed trader ID emitted by this API. A wallet address this API does not track yet still returns 200 with a degraded 'not yet synced' document (no 404). A value that is not a wallet address and matches no username or trader ID this API knows returns 404 not_found with error.param address, as the JSON error envelope. The Markdown variant does not emit an ETag and does not support conditional requests; use the JSON variant (drop the .md suffix) for ETag/If-None-Match handling.
	//
	// Corresponds with GET /api/v1/trader/{address}/context.md (the `GetTraderContextMarkdown` operationId).
	GetTraderContextMarkdown(ctx context.Context, address string, params *GetTraderContextMarkdownParams, reqEditors ...RequestEditorFn) (*http.Response, error)

	// GetTraderExportSnapshot Trader export snapshot metadata
	//
	// Returns export source-range, completeness, volume reconciliation, row-count estimate, and large-export policy for one trader. To download the full dataset programmatically, POST to this same path to submit an async export job (json | ndjson | csv), then poll the status route and follow the download route once ready.
	//
	// Corresponds with GET /api/v1/trader/{address}/export (the `GetTraderExportSnapshot` operationId).
	GetTraderExportSnapshot(ctx context.Context, address string, params *GetTraderExportSnapshotParams, reqEditors ...RequestEditorFn) (*http.Response, error)

	// SubmitTraderExport Submit a trader dataset export job
	//
	// Queues an async export of the trader's full dataset in the requested format (json default, ndjson, or csv) and returns the job resource. Poll the status route at poll_after_s until terminal is true, then follow the download route while status is 'ready' (until expires_at, 24 hours from submit). Reuse: without fresh=true, a live job for the same trader and format inside its retention window (queued, running, reconcile_required or ready) is returned with 200 instead of a new one, except a job its owner asked to cancel, which is never reused; its data_as_of says what its file is a snapshot of. With fresh=true only a queued job (which has not started reading) is reused; a running, reconciling or ready job is left alone and a new job is reserved, which consumes quota like any new job. Both decisions run under one per-account lock, so two concurrent submits cannot both reserve when one would have reused the other. Quotas are the per-user daily and per-address hourly export caps, keyed on the API key owner so an API key never widens its owner's quota. New full exports select one database read generation before delivery. JSON and NDJSON add export_metadata.generation (id, selected_at, consistency=repeatable_read, source_watermarks for positions, native P&L, categories and all matching trades), position_generation, provider_observations (provider values and observation/revision metadata), category_data_as_of, pnl_date_from/to, pnl_rows, pnl_row_limit (3650), markets_rows, markets_row_limit (50000), summary_basis and trades_basis. Summary counts cover all stored markets; the markets section retains its existing latest-activity 50000-row limit and P&L its earliest-3650-days limit. These are database consistency and section coverage facts, not a claim that providers observed every section simultaneously. CSV appends export_generation, export_selected_at and export_consistency columns. Downloaded objects also expose x-amz-meta-export-generation, x-amz-meta-export-selected-at, x-amz-meta-export-consistency, x-amz-meta-export-trades and x-amz-meta-export-provenance headers, including empty CSV files. Historical artifacts remain unchanged. Select CSV columns by name; JSON/NDJSON readers may ignore the additive fields. A read exceeding 600 seconds or an uncompressed artifact exceeding 2 GiB fails without publishing a partial file.
	//
	// Corresponds with POST /api/v1/trader/{address}/export (the `SubmitTraderExport` operationId).
	SubmitTraderExport(ctx context.Context, address string, params *SubmitTraderExportParams, reqEditors ...RequestEditorFn) (*http.Response, error)

	// CancelTraderExport Cancel a trader export job
	//
	// Cancels a submitted export and returns the job resource, the same shape the status route returns. A queued job reads cancelled at once and no worker will start it. A running job reads cancel_requested until the worker reaches its next safe point, then cancelled: the worker checks every 5 seconds while it reads the snapshot and between upload parts, and once more at the last point before the file is published; a storage request already in flight finishes first (each is bounded at 120 seconds), and a partial upload is discarded. If the worker itself stops first, the job reads cancelled after its 30-minute lease lapses, at the next hourly cleanup. A job a cancel can no longer reach is returned unchanged with 200: once its upload is being completed it finishes as ready (or reconcile_required, then ready or failed), and ready, failed, expired and cancelled jobs are terminal. A cancel never deletes a ready file; compare status before and after. Repeating the request is safe: it converges on the same state and never repeats a transition, so a client that lost the answer can send it again or read the status route. While terminal is false, poll the status route after poll_after_s. Quota is unchanged: the submit's reservation keeps counting toward the per-user daily and per-address hourly export caps for its full window, as a failed export's does, and a job its owner asked to cancel is never reused by a later submit, which reserves a new job. Webhook endpoints subscribed to export_job_cancelled receive it when the job reaches cancelled. An unknown job id, or a job owned by another account or submitted for another trader, answers 404 exactly as the status route does.
	//
	// Corresponds with POST /api/v1/trader/{address}/export/cancel (the `CancelTraderExport` operationId).
	CancelTraderExport(ctx context.Context, address string, params *CancelTraderExportParams, reqEditors ...RequestEditorFn) (*http.Response, error)

	// DownloadTraderExport Download a finished trader export
	//
	// Redirects (302) to a short-lived presigned URL for the finished export file while the job status is 'ready' and expires_at has not passed. The file is gzip-compressed and served with the format's Content-Type (application/json, application/x-ndjson, or text/csv). Returns 400 while the job is queued, running, cancel_requested or reconciling (poll the status route first) and for a failed or cancelled job (submit a new export); returns 410 with error.code not_found and error.reason export_expired once the retention window has passed or the file has been retired, so the redirect never points at a file that is gone.
	//
	// Corresponds with GET /api/v1/trader/{address}/export/download (the `DownloadTraderExport` operationId).
	DownloadTraderExport(ctx context.Context, address string, params *DownloadTraderExportParams, reqEditors ...RequestEditorFn) (*http.Response, error)

	// GetTraderExportStatus Poll a trader export job
	//
	// Returns the job resource for a submitted export: status (queued | running | cancel_requested | reconcile_required | ready | failed | expired | cancelled), terminal, next_action and poll_after_s, the lifecycle timestamps, the retention window (expires_at) and, once the file is written, data_as_of and the artifact identity. A ready job past expires_at reads expired; a queued or reconciling job past expires_at reads failed. A running job its owner cancelled reads cancel_requested until the worker stops, then cancelled. failed, cancelled and expired jobs stay readable for 48 hours, then 404.
	//
	// Corresponds with GET /api/v1/trader/{address}/export/status (the `GetTraderExportStatus` operationId).
	GetTraderExportStatus(ctx context.Context, address string, params *GetTraderExportStatusParams, reqEditors ...RequestEditorFn) (*http.Response, error)

	// GetTraderGradeAt Get a trader grade proven visible at a past instant
	//
	// Reads one trader's recorded grade at as_of from prospective visibility evidence. Before the first recorded observation, after deletion, or during a grade-transition gap, status is unknown and grade is null; a recorded ungraded trader instead has status ungraded. available_from is the first proven observation for this trader, not a claim that earlier grades can be reconstructed. observed_at is when the grade writer began the transition and published_by is the later confirmation that the row was committed, not an exact commit time. Older observations have null model_version, model_build_sha and source_observed_by; do not substitute a current grade or a dated ranking row. The requested event time, publication bounds and model provenance are separate. Use a grade only when status is graded. This is additive; the current-grade trader and leaderboard operations do not change.
	//
	// Corresponds with GET /api/v1/trader/{address}/grade-at (the `GetTraderGradeAt` operationId).
	GetTraderGradeAt(ctx context.Context, address string, params *GetTraderGradeAtParams, reqEditors ...RequestEditorFn) (*http.Response, error)

	// GetTraderPnl Get trader P&L time series
	//
	// Returns a trader's daily P&L time series and pre-derived stats from the precomputed daily_pnl read model: entries (daily cumulative P&L), period stats (all/90d/30d/7d), monthly aggregation, per-year totals, and the drawdown series. Reads the refreshed read model, not a per-request equity replay. A resolved trader with no daily P&L returns an empty structured object (HTTP 200); an unknown address returns 404. Optional from/to and sections bound what comes back: from/to clip the two daily series (entries, drawdown) to an inclusive UTC date window, and sections names which of the five sections the body carries. A request that sends none of the three receives the whole object exactly as before, down to the ETag. A body built with any of them carries data.view, which names the bounds, the sections applied, the size of the full series and the last daily point before the window; a section the request excluded is absent from data, not null or empty. stats, monthly and year_totals keep their full-period definitions whatever the window says, so an economic value never changes meaning because a chart asked for seven days.
	//
	// Corresponds with GET /api/v1/trader/{address}/pnl (the `GetTraderPnl` operationId).
	GetTraderPnl(ctx context.Context, address string, params *GetTraderPnlParams, reqEditors ...RequestEditorFn) (*http.Response, error)

	// GetPositionTimeline Get a trader's position timeline for one market
	//
	// Returns stored Polymarket fills for one tracked trader in one market, newest first, with outcome-specific running_amount and running_avg_price including earlier stored fills before pagination. The {address} segment accepts the same identity shapes as the plural alias: wallet, username, trd_-prefixed trader id, bare integer traders.id, or @username, resolved with precedence @username -> wallet -> trd_ -> integer -> username. A leading @ resolves the rest as a username only, which is how to reach an all-digit username that the integer rule reads as an id. Only HOT and WARM traders are served; others return 404. The cumulative buy-weighted fill average is unchanged by sells. Split, merge, redemption and neg-risk activity are excluded; totals are not complete holdings or provider current-position avgPrice. Cursor-paginated; values stay stable across page sizes/cursors for unchanged source history.
	//
	// Corresponds with GET /api/v1/trader/{address}/position-timeline (the `GetPositionTimeline` operationId).
	GetPositionTimeline(ctx context.Context, address string, params *GetPositionTimelineParams, reqEditors ...RequestEditorFn) (*http.Response, error)

	// BatchGetTradersWithBody Batch traders
	//
	// Returns traders for 1-25 wallet addresses or known usernames. Results preserve request order, duplicate inputs return duplicate rows, and each item is charged one batch item unit before execution. A wallet address this API does not track yet returns data with sync_status "unknown", matching the single trader endpoint. A username, trd_ id or numeric trader id that resolves to no trader is a per-item not_found error with error.param "traders", never an ok row keyed on the input.
	//
	// Takes any type of body and a specified content type.
	//
	// Corresponds with POST /api/v1/traders/batch (the `BatchGetTraders` operationId).
	BatchGetTradersWithBody(ctx context.Context, params *BatchGetTradersParams, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*http.Response, error)

	// BatchGetTraders Batch traders
	//
	// Returns traders for 1-25 wallet addresses or known usernames. Results preserve request order, duplicate inputs return duplicate rows, and each item is charged one batch item unit before execution. A wallet address this API does not track yet returns data with sync_status "unknown", matching the single trader endpoint. A username, trd_ id or numeric trader id that resolves to no trader is a per-item not_found error with error.param "traders", never an ok row keyed on the input.
	//
	// Takes a body of the `application/json` content type.
	//
	// Corresponds with POST /api/v1/traders/batch (the `BatchGetTraders` operationId).
	BatchGetTraders(ctx context.Context, params *BatchGetTradersParams, body BatchGetTradersJSONRequestBody, reqEditors ...RequestEditorFn) (*http.Response, error)

	// GetPositionTimelineById Get a trader's position timeline (unified identity resolver)
	//
	// Unified trader-timeline route (#4975). {trader} accepts all five identity shapes - 0x... wallet, username, trd_-prefixed trader id, bare integer id, and @username (a username lookup only, for all-digit usernames) - resolved by the single shared trader-identity resolver. Returns stored Polymarket fills for one tracked trader in one market, newest first, with server-computed running_amount and running_avg_price. Only HOT and WARM tier traders are tracked; other traders return 404. Response payload matches the singular GET /api/v1/trader/{address}/position-timeline route for the same (trader, market), except for the per-request meta.request_id. The prior integer-id-only variant is preserved: the same path now accepts every identity shape.
	//
	// Corresponds with GET /api/v1/traders/{trader}/position-timeline (the `GetPositionTimelineById` operationId).
	GetPositionTimelineById(ctx context.Context, trader string, params *GetPositionTimelineByIdParams, reqEditors ...RequestEditorFn) (*http.Response, error)

	// GetUsage Inspect current API usage without spending primary request quota
	//
	// Returns the authenticated caller sliding-window request budget, UTC-day usage and monthly quota. This control-plane endpoint remains available for a valid credential after paid data access lapses and does not increment the primary Redis rate-limit counter, monthly quota or API usage table; it shares a separate 100 reads/minute per-user inspection bucket with GET /api/v1/me. UTC-day totals use finalized quarter-hour rollups plus the disjoint raw interval through request time; unavailable rollup progress returns an error.
	//
	// Corresponds with GET /api/v1/usage (the `GetUsage` operationId).
	GetUsage(ctx context.Context, params *GetUsageParams, reqEditors ...RequestEditorFn) (*http.Response, error)

	// ListWebhooks List builder webhook destinations
	//
	// Returns webhook destinations owned by the authenticated API key user. Deleted endpoints are omitted; an endpoint paused with PATCH or disabled after consecutive failures is listed with status disabled. Subscribable event_types and their payload shapes are described by GET /api/v1/webhooks/events. Export lifecycle event types (export_job_ready, export_job_failed, export_job_expired, export_job_cancelled) are delivered only to the API-key account that created the export and contain no download URL; use the authorized export status and download routes. Four subscribable event types are Pro-only and only deliver to API keys on an active Pro subscription. whale_trades_inserted is one of them, gated by the same SubscriberScope::InsiderOnly mechanism as the other three (each type carries its own LiveEventContract entry; they share the scope value). The other three: wallet_grade_changed (data: wallet, trader_id, old_grade, new_grade, direction (upgrade|downgrade), skill_index, final_score, date) fires on a Pass-2 grade transition; insider_radar_flag_raised (data: trade_id, wallet, trader_id, condition_id, suspicion_score, track, side (yes|no), size, price) fires the first time a trade's suspicion score crosses the radar flag threshold; sharp_money_flow_detected (data: condition_id, net_flow_usd, abs_net_flow_usd, dominant_side (yes|no), grade_floor (S|A|B|C|D|F), whale_trade_count, window) fires when a scheduled scanner detects ranked-trader net flow crossing a threshold (up or down) on a market, and smart_money_flow_detected is its deprecated spelling of the same event. live_sports_updated (data: event_slug, game_id, league, version, changed, observed_at, published_at, status, period, clock, live, ended, scores, series_format, snapshot_url) is ungated and fires as a bounded per-game pulse when a live game's scores, status, period or live/ended state moves: at most one delivery per game per 20 seconds, with a live or ended transition exempt from that interval, and the game clock alone never firing one. version is a durable per-game ordinal, changed lists the material fields that moved since that game's previous delivered pulse, and snapshot_url is where to re-read the whole game after a gap.
	//
	// Corresponds with GET /api/v1/webhooks (the `ListWebhooks` operationId).
	ListWebhooks(ctx context.Context, params *ListWebhooksParams, reqEditors ...RequestEditorFn) (*http.Response, error)

	// CreateWebhookWithBody Create a builder webhook destination
	//
	// Creates a pending HTTPS webhook destination. The response includes one-time signing_secret and verification.token values. Deliveries are not sent until the endpoint is verified, and verification requires the destination to answer 2xx to a signed webhook.verification challenge (see POST /api/v1/webhooks/{id}/verify). The subscribable event_types and their data payload shapes are described by GET /api/v1/webhooks/events; the per-endpoint delivery log is GET /api/v1/webhooks/{id}/deliveries. Export lifecycle event types (export_job_ready, export_job_failed, export_job_expired, export_job_cancelled) are delivered only to the API-key account that created the export and contain no download URL; use the authorized export status and download routes. Four subscribable event types are Pro-only and only deliver to API keys on an active Pro subscription. whale_trades_inserted is one of them, gated by the same SubscriberScope::InsiderOnly mechanism as the other three (each type carries its own LiveEventContract entry; they share the scope value). The other three: wallet_grade_changed (data: wallet, trader_id, old_grade, new_grade, direction (upgrade|downgrade), skill_index, final_score, date) fires on a Pass-2 grade transition; insider_radar_flag_raised (data: trade_id, wallet, trader_id, condition_id, suspicion_score, track, side (yes|no), size, price) fires the first time a trade's suspicion score crosses the radar flag threshold; sharp_money_flow_detected (data: condition_id, net_flow_usd, abs_net_flow_usd, dominant_side (yes|no), grade_floor (S|A|B|C|D|F), whale_trade_count, window) fires when a scheduled scanner detects ranked-trader net flow crossing a threshold (up or down) on a market, and smart_money_flow_detected is its deprecated spelling of the same event. live_sports_updated (data: event_slug, game_id, league, version, changed, observed_at, published_at, status, period, clock, live, ended, scores, series_format, snapshot_url) is ungated and fires as a bounded per-game pulse when a live game's scores, status, period or live/ended state moves: at most one delivery per game per 20 seconds, with a live or ended transition exempt from that interval, and the game clock alone never firing one. version is a durable per-game ordinal, changed lists the material fields that moved since that game's previous delivered pulse, and snapshot_url is where to re-read the whole game after a gap. Delivery signing: each delivery request carries one or more HMAC-SHA256 signatures in the x-0xinsider-signature header as comma-separated v1=<hex> candidates. During staged rotation, the current and previous signing secrets are both signed for one hour; accept any valid candidate. Each candidate is HMAC-SHA256(signing_secret, "<timestamp>.<raw_request_body>"). The signed <timestamp> is sent separately as x-0xinsider-timestamp (unix seconds). To verify a delivery: read x-0xinsider-timestamp, reject it if it differs from the current time by more than 300 seconds, recompute each candidate over "<timestamp>.<raw_body>" with the active secrets, and compare using a constant-time comparison. Each delivery also carries x-0xinsider-event-id, x-0xinsider-event-type, x-0xinsider-delivery-id, and x-0xinsider-delivery-attempt headers. Retries and disabling: ordinary transient delivery failures use stable jitter between half and the existing 60, 120, 240, 480, 960, 1920 and 3600-second upper bounds (retry_policy.retry_horizon_seconds = 7380); on 408, 429, or 5xx, a valid Retry-After delta-seconds or HTTP-date replaces that one wait and is clamped to 60–3600 seconds, while missing, malformed, past, or non-retryable-response hints use the ordinary schedule. The delivery still has eight attempts (retry_policy.max_attempts), and an eighth failure becomes dead_letter. The delivery log exposes retry_schedule_reason and next_attempt_at so a receiver can see the active schedule. Separately, an endpoint is disabled after 8 consecutive failed attempts across all of its deliveries (retry_policy.disable_after_consecutive_failures); any successful attempt resets that count, so a busy endpoint that goes down can be disabled in minutes, well before any single delivery exhausts its retries. Disabling dead-letters every delivery still queued for the endpoint and emails the account owner, within about an hour, with each disabled endpoint and its last failed response. Re-enable it with PATCH /api/v1/webhooks/{id} {"enabled": true}; re-enabling does not resend dead-lettered deliveries. Resend each one with POST /api/v1/webhooks/{id}/deliveries/{delivery_id}/redeliver, or catch up with GET /api/v1/events/feed/since from the last event you processed. GET /api/v1/webhooks/{id}/deliveries shows next_attempt_at and retry_schedule_reason for a delivery still waiting to retry.
	//
	// Takes any type of body and a specified content type.
	//
	// Corresponds with POST /api/v1/webhooks (the `CreateWebhook` operationId).
	CreateWebhookWithBody(ctx context.Context, params *CreateWebhookParams, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*http.Response, error)

	// CreateWebhook Create a builder webhook destination
	//
	// Creates a pending HTTPS webhook destination. The response includes one-time signing_secret and verification.token values. Deliveries are not sent until the endpoint is verified, and verification requires the destination to answer 2xx to a signed webhook.verification challenge (see POST /api/v1/webhooks/{id}/verify). The subscribable event_types and their data payload shapes are described by GET /api/v1/webhooks/events; the per-endpoint delivery log is GET /api/v1/webhooks/{id}/deliveries. Export lifecycle event types (export_job_ready, export_job_failed, export_job_expired, export_job_cancelled) are delivered only to the API-key account that created the export and contain no download URL; use the authorized export status and download routes. Four subscribable event types are Pro-only and only deliver to API keys on an active Pro subscription. whale_trades_inserted is one of them, gated by the same SubscriberScope::InsiderOnly mechanism as the other three (each type carries its own LiveEventContract entry; they share the scope value). The other three: wallet_grade_changed (data: wallet, trader_id, old_grade, new_grade, direction (upgrade|downgrade), skill_index, final_score, date) fires on a Pass-2 grade transition; insider_radar_flag_raised (data: trade_id, wallet, trader_id, condition_id, suspicion_score, track, side (yes|no), size, price) fires the first time a trade's suspicion score crosses the radar flag threshold; sharp_money_flow_detected (data: condition_id, net_flow_usd, abs_net_flow_usd, dominant_side (yes|no), grade_floor (S|A|B|C|D|F), whale_trade_count, window) fires when a scheduled scanner detects ranked-trader net flow crossing a threshold (up or down) on a market, and smart_money_flow_detected is its deprecated spelling of the same event. live_sports_updated (data: event_slug, game_id, league, version, changed, observed_at, published_at, status, period, clock, live, ended, scores, series_format, snapshot_url) is ungated and fires as a bounded per-game pulse when a live game's scores, status, period or live/ended state moves: at most one delivery per game per 20 seconds, with a live or ended transition exempt from that interval, and the game clock alone never firing one. version is a durable per-game ordinal, changed lists the material fields that moved since that game's previous delivered pulse, and snapshot_url is where to re-read the whole game after a gap. Delivery signing: each delivery request carries one or more HMAC-SHA256 signatures in the x-0xinsider-signature header as comma-separated v1=<hex> candidates. During staged rotation, the current and previous signing secrets are both signed for one hour; accept any valid candidate. Each candidate is HMAC-SHA256(signing_secret, "<timestamp>.<raw_request_body>"). The signed <timestamp> is sent separately as x-0xinsider-timestamp (unix seconds). To verify a delivery: read x-0xinsider-timestamp, reject it if it differs from the current time by more than 300 seconds, recompute each candidate over "<timestamp>.<raw_body>" with the active secrets, and compare using a constant-time comparison. Each delivery also carries x-0xinsider-event-id, x-0xinsider-event-type, x-0xinsider-delivery-id, and x-0xinsider-delivery-attempt headers. Retries and disabling: ordinary transient delivery failures use stable jitter between half and the existing 60, 120, 240, 480, 960, 1920 and 3600-second upper bounds (retry_policy.retry_horizon_seconds = 7380); on 408, 429, or 5xx, a valid Retry-After delta-seconds or HTTP-date replaces that one wait and is clamped to 60–3600 seconds, while missing, malformed, past, or non-retryable-response hints use the ordinary schedule. The delivery still has eight attempts (retry_policy.max_attempts), and an eighth failure becomes dead_letter. The delivery log exposes retry_schedule_reason and next_attempt_at so a receiver can see the active schedule. Separately, an endpoint is disabled after 8 consecutive failed attempts across all of its deliveries (retry_policy.disable_after_consecutive_failures); any successful attempt resets that count, so a busy endpoint that goes down can be disabled in minutes, well before any single delivery exhausts its retries. Disabling dead-letters every delivery still queued for the endpoint and emails the account owner, within about an hour, with each disabled endpoint and its last failed response. Re-enable it with PATCH /api/v1/webhooks/{id} {"enabled": true}; re-enabling does not resend dead-lettered deliveries. Resend each one with POST /api/v1/webhooks/{id}/deliveries/{delivery_id}/redeliver, or catch up with GET /api/v1/events/feed/since from the last event you processed. GET /api/v1/webhooks/{id}/deliveries shows next_attempt_at and retry_schedule_reason for a delivery still waiting to retry.
	//
	// Takes a body of the `application/json` content type.
	//
	// Corresponds with POST /api/v1/webhooks (the `CreateWebhook` operationId).
	CreateWebhook(ctx context.Context, params *CreateWebhookParams, body CreateWebhookJSONRequestBody, reqEditors ...RequestEditorFn) (*http.Response, error)

	// ListWebhookEvents List webhook event catalog
	//
	// Self-describing catalog of every webhook event type: its description, data payload shape, and whether it is active (has a firing producer) or dormant (subscribable but not yet delivered; no event type is dormant today). The catalog is identical for every authenticated key and exposes no owner-scoped data. 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) appear in the catalog but 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 and download routes.
	//
	// Corresponds with GET /api/v1/webhooks/events (the `ListWebhookEvents` operationId).
	ListWebhookEvents(ctx context.Context, params *ListWebhookEventsParams, reqEditors ...RequestEditorFn) (*http.Response, error)

	// DeleteWebhook Disable a builder webhook destination
	//
	// Soft-deletes a webhook destination owned by the authenticated API key user. Existing delivery audit rows remain retained.
	//
	// Corresponds with DELETE /api/v1/webhooks/{id} (the `DeleteWebhook` operationId).
	DeleteWebhook(ctx context.Context, id int64, params *DeleteWebhookParams, reqEditors ...RequestEditorFn) (*http.Response, error)

	// GetWebhook Get one builder webhook destination
	//
	// Returns one webhook destination owned by the authenticated API key user.
	//
	// Corresponds with GET /api/v1/webhooks/{id} (the `GetWebhook` operationId).
	GetWebhook(ctx context.Context, id int64, params *GetWebhookParams, reqEditors ...RequestEditorFn) (*http.Response, error)

	// UpdateWebhookWithBody Update a builder webhook destination
	//
	// Updates name, HTTPS URL, event types, or enabled state. URL changes force pending_verification and return a new verification token; the new destination must answer 2xx to the signed webhook.verification challenge before deliveries resume. A URL change returns 409 with error.reason=webhook_delivery_in_progress while this destination has an active delivery; retry the same mutation after that request completes.
	//
	// Takes any type of body and a specified content type.
	//
	// Corresponds with PATCH /api/v1/webhooks/{id} (the `UpdateWebhook` operationId).
	UpdateWebhookWithBody(ctx context.Context, id int64, params *UpdateWebhookParams, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*http.Response, error)

	// UpdateWebhook Update a builder webhook destination
	//
	// Updates name, HTTPS URL, event types, or enabled state. URL changes force pending_verification and return a new verification token; the new destination must answer 2xx to the signed webhook.verification challenge before deliveries resume. A URL change returns 409 with error.reason=webhook_delivery_in_progress while this destination has an active delivery; retry the same mutation after that request completes.
	//
	// Takes a body of the `application/json` content type.
	//
	// Corresponds with PATCH /api/v1/webhooks/{id} (the `UpdateWebhook` operationId).
	UpdateWebhook(ctx context.Context, id int64, params *UpdateWebhookParams, body UpdateWebhookJSONRequestBody, reqEditors ...RequestEditorFn) (*http.Response, error)

	// ListWebhookDeliveries List webhook delivery log
	//
	// Recent delivery attempts for one webhook destination owned by the authenticated API key user, newest first, with opaque cursor pagination. Returns 404 (identical to an unknown id) when the endpoint is not owned by the caller, so a non-owner cannot tell an owned-but-empty log apart from someone else's endpoint. Delivery rows omit the request body and signing secret. next_attempt_at is when a pending or retry delivery is next attempted; retry_schedule_reason says whether the queue is following receiver_retry_after, transient_failure, permanent_or_auth_failure, manual_redelivery, or configuration_changed; both are null while an attempt is in flight and once the delivery is delivered or dead_letter. A delivery keeps the existing eight-attempt budget, endpoint failure budget, fairness limits, and ordinary 7380-second upper-bound schedule; see POST /api/v1/webhooks for the bounded Retry-After policy. Resend a dead_letter delivery with POST /api/v1/webhooks/{id}/deliveries/{delivery_id}/redeliver.
	//
	// Corresponds with GET /api/v1/webhooks/{id}/deliveries (the `ListWebhookDeliveries` operationId).
	ListWebhookDeliveries(ctx context.Context, id int64, params *ListWebhookDeliveriesParams, reqEditors ...RequestEditorFn) (*http.Response, error)

	// RedeliverWebhookDelivery Redeliver a dead-lettered webhook delivery
	//
	// Returns one dead_letter delivery to the delivery queue with a fresh attempt budget: status becomes pending, attempt_count resets to 0, and next_attempt_at is now, so the delivery worker claims it like any queued delivery, under the same per-owner and per-origin concurrency limits. Use it after a failed delivery exhausts its retries, or after re-enabling an endpoint whose queued deliveries were dead-lettered when it was disabled: PATCH /api/v1/webhooks/{id} {"enabled": true} resends nothing by itself. The resend is signed with the endpoint's current signing secret and sent to its current URL, and keeps the delivery's event_id and idempotency-key header, so a receiver that already processed the event can deduplicate it; x-0xinsider-delivery-attempt starts again at 1. last_response_status and last_error keep the previous failure until the next attempt records its own. Returns 409 when the delivery is already delivered or still queued (pending, retry, or processing), or when the endpoint would not receive it (disabled, not verified, or no longer subscribed to the delivery's event_type); error.message names the step that lets the same request succeed. Returns 404 for an endpoint or delivery the caller does not own, including a delivery removed by the seven-day retention of delivered and dead_letter history.
	//
	// Corresponds with POST /api/v1/webhooks/{id}/deliveries/{delivery_id}/redeliver (the `RedeliverWebhookDelivery` operationId).
	RedeliverWebhookDelivery(ctx context.Context, id int64, deliveryId int64, params *RedeliverWebhookDeliveryParams, reqEditors ...RequestEditorFn) (*http.Response, error)

	// RotateWebhookSecret Rotate a builder webhook signing secret
	//
	// Rotates the endpoint signing secret and returns the new signing_secret once in the response. Returns 409 with error.reason=webhook_delivery_in_progress while a live delivery freezes the current signing nonce; retry after it completes.
	//
	// Corresponds with POST /api/v1/webhooks/{id}/rotate-secret (the `RotateWebhookSecret` operationId).
	RotateWebhookSecret(ctx context.Context, id int64, params *RotateWebhookSecretParams, reqEditors ...RequestEditorFn) (*http.Response, error)

	// ActivateWebhookSecret Activate a staged builder webhook signing secret
	//
	// Promotes the prepared signing secret to current, returns it once, and signs every delivery with both the new and previous secrets for one hour. Call retire after the receiver has completed its rollout. The current secret remains available through the existing immediate rotate-secret route for emergency replacement.
	//
	// Corresponds with POST /api/v1/webhooks/{id}/rotate-secret/activate (the `ActivateWebhookSecret` operationId).
	ActivateWebhookSecret(ctx context.Context, id int64, params *ActivateWebhookSecretParams, reqEditors ...RequestEditorFn) (*http.Response, error)

	// PrepareWebhookSecret Prepare a staged builder webhook signing secret
	//
	// Creates a pending signing secret while the current secret remains active. Deploy the returned one-time signing_secret to the receiver before calling activate. The response exposes secret_rotation.status=pending; an existing pending secret is returned again so a lost response can be recovered safely.
	//
	// Corresponds with POST /api/v1/webhooks/{id}/rotate-secret/prepare (the `PrepareWebhookSecret` operationId).
	PrepareWebhookSecret(ctx context.Context, id int64, params *PrepareWebhookSecretParams, reqEditors ...RequestEditorFn) (*http.Response, error)

	// RetireWebhookSecret Retire the previous builder webhook signing secret
	//
	// Ends the one-hour dual-signature overlap and removes the previous signing secret from future delivery authorization. Call this after the receiver accepts the activated secret. The operation is idempotent and does not return signing_secret.
	//
	// Corresponds with POST /api/v1/webhooks/{id}/rotate-secret/retire (the `RetireWebhookSecret` operationId).
	RetireWebhookSecret(ctx context.Context, id int64, params *RetireWebhookSecretParams, reqEditors ...RequestEditorFn) (*http.Response, error)

	// VerifyWebhookWithBody Verify a builder webhook destination
	//
	// Activates a pending webhook destination. Two conditions must both hold: the one-time verification token matches and has not expired, AND the destination answers 2xx to a signed challenge this operation POSTs to the endpoint's stored url. The challenge body is {"type":"webhook.verification","token":"<verification_token>","webhook_id":<id>}. It carries x-0xinsider-event-type: webhook.verification plus the same x-0xinsider-timestamp and x-0xinsider-signature headers a delivery carries, signed with that endpoint's signing_secret, so verify it exactly as you verify a delivery. Answer any 2xx within 10 seconds; the challenge response body is never read, and the challenge follows no redirects. A status outside 2xx, no answer within 10 seconds, or a url that does not resolve to a publicly routable address leaves status at pending_verification and returns 422. The token alone never activates an endpoint.
	//
	// Takes any type of body and a specified content type.
	//
	// Corresponds with POST /api/v1/webhooks/{id}/verify (the `VerifyWebhook` operationId).
	VerifyWebhookWithBody(ctx context.Context, id int64, params *VerifyWebhookParams, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*http.Response, error)

	// VerifyWebhook Verify a builder webhook destination
	//
	// Activates a pending webhook destination. Two conditions must both hold: the one-time verification token matches and has not expired, AND the destination answers 2xx to a signed challenge this operation POSTs to the endpoint's stored url. The challenge body is {"type":"webhook.verification","token":"<verification_token>","webhook_id":<id>}. It carries x-0xinsider-event-type: webhook.verification plus the same x-0xinsider-timestamp and x-0xinsider-signature headers a delivery carries, signed with that endpoint's signing_secret, so verify it exactly as you verify a delivery. Answer any 2xx within 10 seconds; the challenge response body is never read, and the challenge follows no redirects. A status outside 2xx, no answer within 10 seconds, or a url that does not resolve to a publicly routable address leaves status at pending_verification and returns 422. The token alone never activates an endpoint.
	//
	// Takes a body of the `application/json` content type.
	//
	// Corresponds with POST /api/v1/webhooks/{id}/verify (the `VerifyWebhook` operationId).
	VerifyWebhook(ctx context.Context, id int64, params *VerifyWebhookParams, body VerifyWebhookJSONRequestBody, reqEditors ...RequestEditorFn) (*http.Response, error)

	// ListWhaleTrades List whale trades
	//
	// Returns recent large trades with signal scoring and persisted suspicion facts. Filter by size, category, trader grade, or persisted suspicion. Filters are applied before pagination, and every request uses SQL-backed limit + 1 pagination so has_more and next_cursor reflect the filtered result set. Cursor-paginated, newest first. Market categories come from provider-backed market_canonical identity. Deprecated alias of GET /api/v1/large-trades, kept live and never removed (#16304); every response carries `Deprecation: @1790047200` (RFC 9745, 2026-09-22T03:20:00Z) and a `Link` to the successor (`rel="successor-version"`) and to the versioning policy (`rel="deprecation"`). No `Sunset` header is sent because no removal is planned. The response adds a top-level `data_quality` object beside `data`, grouping alert, trade, trader, ranking, market, and volume fields by their database writer. `whale_alerts.inserted_xid` is reported as unknown because it is a transaction identifier rather than a timestamp. Its stored clocks are part of the ETag; `meta` continues to hold transport cache facts. Pass since to poll for new trades: the answer holds only the trades recorded after the one you name, and with If-None-Match a poll that finds none is 304 with an empty body.
	//
	// Corresponds with GET /api/v1/whale-trades (the `ListWhaleTrades` operationId).
	//
	// Deprecated: this operation has been marked as deprecated upstream, but no `x-deprecated-reason` was set
	ListWhaleTrades(ctx context.Context, params *ListWhaleTradesParams, reqEditors ...RequestEditorFn) (*http.Response, error)

	// ListWhaleTradeHistory Replay historical whale trades
	//
	// Returns historical whale trades from local whale_alerts rows, not request-time provider fetches. Filter by condition_id, trader, category, minimum grade, persisted suspicion, platform, and RFC3339 from/to windows. All filters are pushed into SQL before LIMIT, every request uses SQL-backed limit + 1 pagination, and results are ordered newest first by traded_at desc, id desc. Metadata exposes local_replay source and best_effort completeness. Deprecated alias of GET /api/v1/large-trades/history, kept live and never removed (#16304); every response carries `Deprecation: @1790047200` (RFC 9745, 2026-09-22T03:20:00Z) and a `Link` to the successor (`rel="successor-version"`) and to the versioning policy (`rel="deprecation"`). No `Sunset` header is sent because no removal is planned. The response adds a top-level `data_quality` object beside `data`, grouping alert, trade, trader, ranking, market, and volume fields by their database writer. `whale_alerts.inserted_xid` is reported as unknown because it is a transaction identifier rather than a timestamp. Its stored clocks are part of the ETag; `meta` continues to hold transport cache facts.
	//
	// Corresponds with GET /api/v1/whale-trades/history (the `ListWhaleTradeHistory` operationId).
	//
	// Deprecated: this operation has been marked as deprecated upstream, but no `x-deprecated-reason` was set
	ListWhaleTradeHistory(ctx context.Context, params *ListWhaleTradeHistoryParams, reqEditors ...RequestEditorFn) (*http.Response, error)

	// GetWhaleTrade Get whale trade by ID
	//
	// Returns one whale trade by raw whale_alerts.id or the wt_-prefixed id emitted by list and history responses. Deprecated alias of GET /api/v1/large-trades/{id}, kept live and never removed (#16304); every response carries `Deprecation: @1790047200` (RFC 9745, 2026-09-22T03:20:00Z) and a `Link` to the successor (`rel="successor-version"`) and to the versioning policy (`rel="deprecation"`). No `Sunset` header is sent because no removal is planned.
	//
	// Corresponds with GET /api/v1/whale-trades/{id} (the `GetWhaleTrade` operationId).
	//
	// Deprecated: this operation has been marked as deprecated upstream, but no `x-deprecated-reason` was set
	GetWhaleTrade(ctx context.Context, id string, params *GetWhaleTradeParams, reqEditors ...RequestEditorFn) (*http.Response, error)

	// ListWhaleTradeCounterpartyExecutions Page counterparty executions
	//
	// Returns a bounded execution page from the immutable snapshot emitted by whale-trade detail. A stale or changed snapshot returns a cursor-expired error so clients restart from detail. Deprecated alias of GET /api/v1/large-trades/{id}/counterparties/executions, kept live and never removed (#16304); every response carries `Deprecation: @1790047200` (RFC 9745, 2026-09-22T03:20:00Z) and a `Link` to the successor (`rel="successor-version"`) and to the versioning policy (`rel="deprecation"`). No `Sunset` header is sent because no removal is planned.
	//
	// Corresponds with GET /api/v1/whale-trades/{id}/counterparties/executions (the `ListWhaleTradeCounterpartyExecutions` operationId).
	//
	// Deprecated: this operation has been marked as deprecated upstream, but no `x-deprecated-reason` was set
	ListWhaleTradeCounterpartyExecutions(ctx context.Context, id string, params *ListWhaleTradeCounterpartyExecutionsParams, reqEditors ...RequestEditorFn) (*http.Response, error)

	// ListWhaleTradeCounterpartyMakers Page maker counterparties
	//
	// Returns a bounded maker-wallet page for one exact execution. Percentages keep the complete execution denominator across pages. Deprecated alias of GET /api/v1/large-trades/{id}/counterparties/executions/{execution_id}/makers, kept live and never removed (#16304); every response carries `Deprecation: @1790047200` (RFC 9745, 2026-09-22T03:20:00Z) and a `Link` to the successor (`rel="successor-version"`) and to the versioning policy (`rel="deprecation"`). No `Sunset` header is sent because no removal is planned.
	//
	// Corresponds with GET /api/v1/whale-trades/{id}/counterparties/executions/{execution_id}/makers (the `ListWhaleTradeCounterpartyMakers` operationId).
	//
	// Deprecated: this operation has been marked as deprecated upstream, but no `x-deprecated-reason` was set
	ListWhaleTradeCounterpartyMakers(ctx context.Context, id string, executionId string, params *ListWhaleTradeCounterpartyMakersParams, reqEditors ...RequestEditorFn) (*http.Response, error)
}

The interface specification for the client above.

type ClientOption

type ClientOption func(*Client) error

ClientOption allows setting custom parameters during construction

func WithBaseURL

func WithBaseURL(baseURL string) ClientOption

WithBaseURL overrides the baseURL.

func WithBearerToken

func WithBearerToken(token string) ClientOption

WithBearerToken authenticates every request with an API key (oxi_sk_live_...) or an OAuth 2.1 access token (oxi_at_...). Discovery, health and the platform capability document need no credential.

The credential is sent over https only, or over http to a loopback host (localhost, 127.0.0.1, [::1]) for a backend you run yourself. A request that would carry it anywhere else fails with *InsecureTransportError before it is sent; the error names the destination, never the token.

func WithHTTPClient

func WithHTTPClient(doer HttpRequestDoer) ClientOption

WithHTTPClient allows overriding the default Doer, which is automatically created using http.Client. This is useful for tests.

func WithRequestEditorFn

func WithRequestEditorFn(fn RequestEditorFn) ClientOption

WithRequestEditorFn allows setting up a callback function, which will be called right before sending the request. This can be used to mutate the request.

func WithRequestTimeout added in v0.3.0

func WithRequestTimeout(timeout time.Duration) ClientOption

WithRequestTimeout sets the total deadline a client from New applies to every request that is not the event stream, replacing both DefaultRequestTimeout and DefaultDownloadTimeout. Zero removes the bound and leaves the connection-level bounds (dial, TLS handshake, response header) in place; a negative duration is an error.

A context that already carries a deadline still wins: this is the default for calls that bring none.

type ClientWithResponses

type ClientWithResponses struct {
	ClientInterface
}

ClientWithResponses builds on ClientInterface to offer response payloads

func New

func New(opts ...ClientOption) (*ClientWithResponses, error)

New returns a typed client for the production API. Pass WithBearerToken for authenticated operations; pass WithBaseURL to target another server.

Every ordinary request is finitely bounded: DefaultRequestTimeout end to end (DefaultDownloadTimeout for the export download), over a transport that bounds the dial, the TLS handshake and the wait for response headers. A context deadline the caller brings wins, WithRequestTimeout changes the default, and a deadline this client applied is reported as *RequestTimeoutError. GET /api/v1/stream is bounded by OpenStream's start and idle timeouts instead, so a healthy stream is never cut by the ordinary-request deadline (timeout.go).

The client refuses GET /api/v1/stream outside OpenStream with ErrStreamBuffered: the generated GetStreamWithResponse reads the unbounded event stream to EOF, so it would neither return nor bound its memory. Read the stream with OpenStream, or take the raw body through GetStream with RawStreamContext. It also refuses to send a bearer credential over plain HTTP to a host that is not loopback, on the request and on any redirect the default http.Client follows (*InsecureTransportError). The generated NewClientWithResponses carries none of this; New is the supported constructor.

WithHTTPClient still replaces the HTTP client, and its owner then owns the transport bounds; the per-request deadline is applied around it either way.

func NewClientWithResponses

func NewClientWithResponses(server string, opts ...ClientOption) (*ClientWithResponses, error)

NewClientWithResponses creates a new ClientWithResponses, which wraps Client with return type handling

func (*ClientWithResponses) ActivateWebhookSecretWithResponse added in v0.3.0

func (c *ClientWithResponses) ActivateWebhookSecretWithResponse(ctx context.Context, id int64, params *ActivateWebhookSecretParams, reqEditors ...RequestEditorFn) (*ActivateWebhookSecretResponse, error)

ActivateWebhookSecretWithResponse Activate a staged builder webhook signing secret

Promotes the prepared signing secret to current, returns it once, and signs every delivery with both the new and previous secrets for one hour. Call retire after the receiver has completed its rollout. The current secret remains available through the existing immediate rotate-secret route for emergency replacement.

Returns a wrapper object for the known response body format(s).

Corresponds with POST /api/v1/webhooks/{id}/rotate-secret/activate (the `ActivateWebhookSecret` operationId).

func (*ClientWithResponses) BatchGetMarketFlowWithBodyWithResponse added in v0.4.0

func (c *ClientWithResponses) BatchGetMarketFlowWithBodyWithResponse(ctx context.Context, params *BatchGetMarketFlowParams, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*BatchGetMarketFlowResponse, error)

BatchGetMarketFlowWithBodyWithResponse Batch market flow

Returns each market's flow and top positions for 1-25 raw provider condition_id values. Results preserve request order, duplicate inputs return duplicate rows, and each item is charged one batch item unit before execution. Do not pass prefixed mkt_ IDs; use market.condition_id from search or explore.

Takes any type of body and a specified content type, and returns a wrapper object for the known response body format(s).

Corresponds with POST /api/v1/markets/flow/batch (the `BatchGetMarketFlow` operationId).

func (*ClientWithResponses) BatchGetMarketFlowWithResponse added in v0.4.0

BatchGetMarketFlowWithResponse Batch market flow

Returns each market's flow and top positions for 1-25 raw provider condition_id values. Results preserve request order, duplicate inputs return duplicate rows, and each item is charged one batch item unit before execution. Do not pass prefixed mkt_ IDs; use market.condition_id from search or explore.

Takes a body of the `application/json` content type, and returns a wrapper object for the known response body format(s).

Corresponds with POST /api/v1/markets/flow/batch (the `BatchGetMarketFlow` operationId).

func (*ClientWithResponses) BatchGetMarketIntelWithBodyWithResponse deprecated

func (c *ClientWithResponses) BatchGetMarketIntelWithBodyWithResponse(ctx context.Context, params *BatchGetMarketIntelParams, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*BatchGetMarketIntelResponse, error)

BatchGetMarketIntelWithBodyWithResponse Batch market intelligence

Deprecated since #16312: use POST /api/v1/markets/flow/batch, which returns the same items under object market_flow_batch. This path stays live, keeps object market_intel_batch, and answers with Deprecation and successor Link headers. Returns each market's flow and top positions for 1-25 raw provider condition_id values. Results preserve request order, duplicate inputs return duplicate rows, and each item is charged one batch item unit before execution. Do not pass prefixed mkt_ IDs; use market.condition_id from search or explore.

Takes any type of body and a specified content type, and returns a wrapper object for the known response body format(s).

Corresponds with POST /api/v1/markets/intel/batch (the `BatchGetMarketIntel` operationId).

Deprecated: this operation has been marked as deprecated upstream, but no `x-deprecated-reason` was set

func (*ClientWithResponses) BatchGetMarketIntelWithResponse

BatchGetMarketIntelWithResponse Batch market intelligence

Deprecated since #16312: use POST /api/v1/markets/flow/batch, which returns the same items under object market_flow_batch. This path stays live, keeps object market_intel_batch, and answers with Deprecation and successor Link headers. Returns each market's flow and top positions for 1-25 raw provider condition_id values. Results preserve request order, duplicate inputs return duplicate rows, and each item is charged one batch item unit before execution. Do not pass prefixed mkt_ IDs; use market.condition_id from search or explore.

Takes a body of the `application/json` content type, and returns a wrapper object for the known response body format(s).

Corresponds with POST /api/v1/markets/intel/batch (the `BatchGetMarketIntel` operationId). Deprecated: this operation has been marked as deprecated upstream, but no `x-deprecated-reason` was set

func (*ClientWithResponses) BatchGetTradersWithBodyWithResponse

func (c *ClientWithResponses) BatchGetTradersWithBodyWithResponse(ctx context.Context, params *BatchGetTradersParams, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*BatchGetTradersResponse, error)

BatchGetTradersWithBodyWithResponse Batch traders

Returns traders for 1-25 wallet addresses or known usernames. Results preserve request order, duplicate inputs return duplicate rows, and each item is charged one batch item unit before execution. A wallet address this API does not track yet returns data with sync_status "unknown", matching the single trader endpoint. A username, trd_ id or numeric trader id that resolves to no trader is a per-item not_found error with error.param "traders", never an ok row keyed on the input.

Takes any type of body and a specified content type, and returns a wrapper object for the known response body format(s).

Corresponds with POST /api/v1/traders/batch (the `BatchGetTraders` operationId).

func (*ClientWithResponses) BatchGetTradersWithResponse

func (c *ClientWithResponses) BatchGetTradersWithResponse(ctx context.Context, params *BatchGetTradersParams, body BatchGetTradersJSONRequestBody, reqEditors ...RequestEditorFn) (*BatchGetTradersResponse, error)

BatchGetTradersWithResponse Batch traders

Returns traders for 1-25 wallet addresses or known usernames. Results preserve request order, duplicate inputs return duplicate rows, and each item is charged one batch item unit before execution. A wallet address this API does not track yet returns data with sync_status "unknown", matching the single trader endpoint. A username, trd_ id or numeric trader id that resolves to no trader is a per-item not_found error with error.param "traders", never an ok row keyed on the input.

Takes a body of the `application/json` content type, and returns a wrapper object for the known response body format(s).

Corresponds with POST /api/v1/traders/batch (the `BatchGetTraders` operationId).

func (*ClientWithResponses) CancelTraderExportWithResponse added in v0.4.0

func (c *ClientWithResponses) CancelTraderExportWithResponse(ctx context.Context, address string, params *CancelTraderExportParams, reqEditors ...RequestEditorFn) (*CancelTraderExportResponse, error)

CancelTraderExportWithResponse Cancel a trader export job

Cancels a submitted export and returns the job resource, the same shape the status route returns. A queued job reads cancelled at once and no worker will start it. A running job reads cancel_requested until the worker reaches its next safe point, then cancelled: the worker checks every 5 seconds while it reads the snapshot and between upload parts, and once more at the last point before the file is published; a storage request already in flight finishes first (each is bounded at 120 seconds), and a partial upload is discarded. If the worker itself stops first, the job reads cancelled after its 30-minute lease lapses, at the next hourly cleanup. A job a cancel can no longer reach is returned unchanged with 200: once its upload is being completed it finishes as ready (or reconcile_required, then ready or failed), and ready, failed, expired and cancelled jobs are terminal. A cancel never deletes a ready file; compare status before and after. Repeating the request is safe: it converges on the same state and never repeats a transition, so a client that lost the answer can send it again or read the status route. While terminal is false, poll the status route after poll_after_s. Quota is unchanged: the submit's reservation keeps counting toward the per-user daily and per-address hourly export caps for its full window, as a failed export's does, and a job its owner asked to cancel is never reused by a later submit, which reserves a new job. Webhook endpoints subscribed to export_job_cancelled receive it when the job reaches cancelled. An unknown job id, or a job owned by another account or submitted for another trader, answers 404 exactly as the status route does.

Returns a wrapper object for the known response body format(s).

Corresponds with POST /api/v1/trader/{address}/export/cancel (the `CancelTraderExport` operationId).

func (*ClientWithResponses) CancelWhaleDatasetWithResponse added in v0.4.0

func (c *ClientWithResponses) CancelWhaleDatasetWithResponse(ctx context.Context, jobId int64, reqEditors ...RequestEditorFn) (*CancelWhaleDatasetResponse, error)

CancelWhaleDatasetWithResponse Cancel a whale dataset job

Cancel queued jobs immediately and request running jobs stop at their next safe point. Repeating cancel converges on the current state; cancellation after the completion fence leaves the artifact ready. Paid export scope; jobs are private to the credential owner. Shares the 20/day owner export quota and fair worker admission with trader exports; datasets also have a combined 5/hour quota. Three worker attempts, 24-hour retention, no partial download; cancellation consumes its reservation. Coverage is whale alerts, not all provider fills.

Returns a wrapper object for the known response body format(s).

Corresponds with POST /api/v1/datasets/whale-trades/{job_id}/cancel (the `CancelWhaleDataset` operationId).

func (*ClientWithResponses) CreateMcpJsonRpcResponseWithBodyWithResponse

func (c *ClientWithResponses) CreateMcpJsonRpcResponseWithBodyWithResponse(ctx context.Context, params *CreateMcpJsonRpcResponseParams, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*CreateMcpJsonRpcResponseResponse, error)

CreateMcpJsonRpcResponseWithBodyWithResponse Remote MCP endpoint (JSON-RPC)

Model Context Protocol (MCP) Streamable HTTP transport. Accepts one JSON-RPC 2.0 request or notification. ID-bearing initialize, ping, tools/list, and tools/call requests receive one same-ID JSON-RPC response. ID-less ping, notifications/initialized, and notifications/cancelled receive HTTP 202 with no body; other ID-less methods and unsolicited response messages receive HTTP 400 with no body. Unknown cancellation IDs are ignored; cancellation does not stop running tool work. Remote MCP exposes 46 read-only tools for public V1 read operations: get_leaderboard, get_trader, batch_get_traders, get_large_trades, get_large_trade, get_large_trades_history, get_whale_trades, get_whale_trade, get_whale_trades_history, get_pre_game_sides, get_pre_game_side_observations, get_sports_edge_signals, get_sports_edge_observations, list_games, get_game, get_market_flow, batch_get_market_flow, get_market_intel, batch_get_market_intel, get_smart_money_flows, get_sharp_money_flows, get_market_snapshot, get_suspicious_trades, get_suspicious_trade, get_insider_radar, get_insider_radar_flag, get_positions, get_position_timeline, get_position_timeline_by_id, search_markets, search_content, explore_markets, get_event_replay_since, list_webhooks, get_webhook, get_daily_report_snapshot, get_weekly_report_snapshot, get_monthly_report_snapshot, get_report, get_trader_export_snapshot, get_platforms, get_large_positions, get_trending_wallets, get_trader_pnl, get_pick_of_the_day, get_pick_of_the_day_archive. Webhook create/update/delete/verify/rotate operations are intentionally not exposed as remote MCP tools. The remote endpoint advertises tools only; it does not implement resources/list, resources/read, prompts/list, or prompts/get. Each tool dispatches to the matching /api/v1/* handler in-process so auth, rate limits, and payload shape match. initialize, notifications/initialized, ping and tools/list answer without a credential; tools/call (and any GET) need Authorization: Bearer <token> with an OAuth 2.1 access token (see the oauth2 security scheme; a tool outside the token's scopes returns isError) or an API key, and without one answer HTTP 401 with a WWW-Authenticate challenge whose resource_metadata names the RFC 9728 document at /.well-known/oauth-protected-resource/api/v1/mcp. A key in a ?token= query parameter is rejected on every authenticated route (the public routes ignore it) with 401 invalid_api_key and error.reason api_key_in_query, because URLs land in shell history, browser history, and logs; a client that can only take a URL can run the @0xinsider/mcp stdio package. Mcp-Session-Id is minted on initialize and echoed on every response. Origin header, when present, is validated against the 0xinsider + localhost allowlist. tools/call arguments are validated against the tool's advertised inputSchema before anything runs: a non-object, an unknown key, a wrong type, an out-of-range number, a value outside an enum or an argument combination outside a oneOf answers a tool result with isError true whose text names the field, never a query built from the arguments that fit. Every tools/call result carries the REST envelope's meta verbatim (request_id, cached, cache_age_s, cost, and the route's provenance such as source and completeness on get_whale_trades_history or ranking_source, directional_source and the category_skill_* fields on get_sports_edge_signals) as structuredContent.meta beside the payload's own keys, and a tool failure carries structuredContent.error with the REST error fields verbatim (code, reason, param, doc_url, retry_at) plus retry_after_seconds, request_id and status, beside its text. The MCP-Protocol-Version request header is checked on every POST and GET: a value outside 2025-11-25, 2025-06-18, 2025-03-26 and 2024-11-05 answers HTTP 400 with JSON-RPC error -32600 before the body is read; an absent header is served as 2025-03-26, the transport specification's compatibility default. Browser preflight allows the header.

Takes any type of body and a specified content type, and returns a wrapper object for the known response body format(s).

Corresponds with POST /api/v1/mcp (the `CreateMcpJsonRpcResponse` operationId).

func (*ClientWithResponses) CreateMcpJsonRpcResponseWithResponse

CreateMcpJsonRpcResponseWithResponse Remote MCP endpoint (JSON-RPC)

Model Context Protocol (MCP) Streamable HTTP transport. Accepts one JSON-RPC 2.0 request or notification. ID-bearing initialize, ping, tools/list, and tools/call requests receive one same-ID JSON-RPC response. ID-less ping, notifications/initialized, and notifications/cancelled receive HTTP 202 with no body; other ID-less methods and unsolicited response messages receive HTTP 400 with no body. Unknown cancellation IDs are ignored; cancellation does not stop running tool work. Remote MCP exposes 46 read-only tools for public V1 read operations: get_leaderboard, get_trader, batch_get_traders, get_large_trades, get_large_trade, get_large_trades_history, get_whale_trades, get_whale_trade, get_whale_trades_history, get_pre_game_sides, get_pre_game_side_observations, get_sports_edge_signals, get_sports_edge_observations, list_games, get_game, get_market_flow, batch_get_market_flow, get_market_intel, batch_get_market_intel, get_smart_money_flows, get_sharp_money_flows, get_market_snapshot, get_suspicious_trades, get_suspicious_trade, get_insider_radar, get_insider_radar_flag, get_positions, get_position_timeline, get_position_timeline_by_id, search_markets, search_content, explore_markets, get_event_replay_since, list_webhooks, get_webhook, get_daily_report_snapshot, get_weekly_report_snapshot, get_monthly_report_snapshot, get_report, get_trader_export_snapshot, get_platforms, get_large_positions, get_trending_wallets, get_trader_pnl, get_pick_of_the_day, get_pick_of_the_day_archive. Webhook create/update/delete/verify/rotate operations are intentionally not exposed as remote MCP tools. The remote endpoint advertises tools only; it does not implement resources/list, resources/read, prompts/list, or prompts/get. Each tool dispatches to the matching /api/v1/* handler in-process so auth, rate limits, and payload shape match. initialize, notifications/initialized, ping and tools/list answer without a credential; tools/call (and any GET) need Authorization: Bearer <token> with an OAuth 2.1 access token (see the oauth2 security scheme; a tool outside the token's scopes returns isError) or an API key, and without one answer HTTP 401 with a WWW-Authenticate challenge whose resource_metadata names the RFC 9728 document at /.well-known/oauth-protected-resource/api/v1/mcp. A key in a ?token= query parameter is rejected on every authenticated route (the public routes ignore it) with 401 invalid_api_key and error.reason api_key_in_query, because URLs land in shell history, browser history, and logs; a client that can only take a URL can run the @0xinsider/mcp stdio package. Mcp-Session-Id is minted on initialize and echoed on every response. Origin header, when present, is validated against the 0xinsider + localhost allowlist. tools/call arguments are validated against the tool's advertised inputSchema before anything runs: a non-object, an unknown key, a wrong type, an out-of-range number, a value outside an enum or an argument combination outside a oneOf answers a tool result with isError true whose text names the field, never a query built from the arguments that fit. Every tools/call result carries the REST envelope's meta verbatim (request_id, cached, cache_age_s, cost, and the route's provenance such as source and completeness on get_whale_trades_history or ranking_source, directional_source and the category_skill_* fields on get_sports_edge_signals) as structuredContent.meta beside the payload's own keys, and a tool failure carries structuredContent.error with the REST error fields verbatim (code, reason, param, doc_url, retry_at) plus retry_after_seconds, request_id and status, beside its text. The MCP-Protocol-Version request header is checked on every POST and GET: a value outside 2025-11-25, 2025-06-18, 2025-03-26 and 2024-11-05 answers HTTP 400 with JSON-RPC error -32600 before the body is read; an absent header is served as 2025-03-26, the transport specification's compatibility default. Browser preflight allows the header.

Takes a body of the `application/json` content type, and returns a wrapper object for the known response body format(s).

Corresponds with POST /api/v1/mcp (the `CreateMcpJsonRpcResponse` operationId).

func (*ClientWithResponses) CreateWebhookWithBodyWithResponse

func (c *ClientWithResponses) CreateWebhookWithBodyWithResponse(ctx context.Context, params *CreateWebhookParams, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*CreateWebhookResponse, error)

CreateWebhookWithBodyWithResponse Create a builder webhook destination

Creates a pending HTTPS webhook destination. The response includes one-time signing_secret and verification.token values. Deliveries are not sent until the endpoint is verified, and verification requires the destination to answer 2xx to a signed webhook.verification challenge (see POST /api/v1/webhooks/{id}/verify). The subscribable event_types and their data payload shapes are described by GET /api/v1/webhooks/events; the per-endpoint delivery log is GET /api/v1/webhooks/{id}/deliveries. Export lifecycle event types (export_job_ready, export_job_failed, export_job_expired, export_job_cancelled) are delivered only to the API-key account that created the export and contain no download URL; use the authorized export status and download routes. Four subscribable event types are Pro-only and only deliver to API keys on an active Pro subscription. whale_trades_inserted is one of them, gated by the same SubscriberScope::InsiderOnly mechanism as the other three (each type carries its own LiveEventContract entry; they share the scope value). The other three: wallet_grade_changed (data: wallet, trader_id, old_grade, new_grade, direction (upgrade|downgrade), skill_index, final_score, date) fires on a Pass-2 grade transition; insider_radar_flag_raised (data: trade_id, wallet, trader_id, condition_id, suspicion_score, track, side (yes|no), size, price) fires the first time a trade's suspicion score crosses the radar flag threshold; sharp_money_flow_detected (data: condition_id, net_flow_usd, abs_net_flow_usd, dominant_side (yes|no), grade_floor (S|A|B|C|D|F), whale_trade_count, window) fires when a scheduled scanner detects ranked-trader net flow crossing a threshold (up or down) on a market, and smart_money_flow_detected is its deprecated spelling of the same event. live_sports_updated (data: event_slug, game_id, league, version, changed, observed_at, published_at, status, period, clock, live, ended, scores, series_format, snapshot_url) is ungated and fires as a bounded per-game pulse when a live game's scores, status, period or live/ended state moves: at most one delivery per game per 20 seconds, with a live or ended transition exempt from that interval, and the game clock alone never firing one. version is a durable per-game ordinal, changed lists the material fields that moved since that game's previous delivered pulse, and snapshot_url is where to re-read the whole game after a gap. Delivery signing: each delivery request carries one or more HMAC-SHA256 signatures in the x-0xinsider-signature header as comma-separated v1=<hex> candidates. During staged rotation, the current and previous signing secrets are both signed for one hour; accept any valid candidate. Each candidate is HMAC-SHA256(signing_secret, "<timestamp>.<raw_request_body>"). The signed <timestamp> is sent separately as x-0xinsider-timestamp (unix seconds). To verify a delivery: read x-0xinsider-timestamp, reject it if it differs from the current time by more than 300 seconds, recompute each candidate over "<timestamp>.<raw_body>" with the active secrets, and compare using a constant-time comparison. Each delivery also carries x-0xinsider-event-id, x-0xinsider-event-type, x-0xinsider-delivery-id, and x-0xinsider-delivery-attempt headers. Retries and disabling: ordinary transient delivery failures use stable jitter between half and the existing 60, 120, 240, 480, 960, 1920 and 3600-second upper bounds (retry_policy.retry_horizon_seconds = 7380); on 408, 429, or 5xx, a valid Retry-After delta-seconds or HTTP-date replaces that one wait and is clamped to 60–3600 seconds, while missing, malformed, past, or non-retryable-response hints use the ordinary schedule. The delivery still has eight attempts (retry_policy.max_attempts), and an eighth failure becomes dead_letter. The delivery log exposes retry_schedule_reason and next_attempt_at so a receiver can see the active schedule. Separately, an endpoint is disabled after 8 consecutive failed attempts across all of its deliveries (retry_policy.disable_after_consecutive_failures); any successful attempt resets that count, so a busy endpoint that goes down can be disabled in minutes, well before any single delivery exhausts its retries. Disabling dead-letters every delivery still queued for the endpoint and emails the account owner, within about an hour, with each disabled endpoint and its last failed response. Re-enable it with PATCH /api/v1/webhooks/{id} {"enabled": true}; re-enabling does not resend dead-lettered deliveries. Resend each one with POST /api/v1/webhooks/{id}/deliveries/{delivery_id}/redeliver, or catch up with GET /api/v1/events/feed/since from the last event you processed. GET /api/v1/webhooks/{id}/deliveries shows next_attempt_at and retry_schedule_reason for a delivery still waiting to retry.

Takes any type of body and a specified content type, and returns a wrapper object for the known response body format(s).

Corresponds with POST /api/v1/webhooks (the `CreateWebhook` operationId).

func (*ClientWithResponses) CreateWebhookWithResponse

func (c *ClientWithResponses) CreateWebhookWithResponse(ctx context.Context, params *CreateWebhookParams, body CreateWebhookJSONRequestBody, reqEditors ...RequestEditorFn) (*CreateWebhookResponse, error)

CreateWebhookWithResponse Create a builder webhook destination

Creates a pending HTTPS webhook destination. The response includes one-time signing_secret and verification.token values. Deliveries are not sent until the endpoint is verified, and verification requires the destination to answer 2xx to a signed webhook.verification challenge (see POST /api/v1/webhooks/{id}/verify). The subscribable event_types and their data payload shapes are described by GET /api/v1/webhooks/events; the per-endpoint delivery log is GET /api/v1/webhooks/{id}/deliveries. Export lifecycle event types (export_job_ready, export_job_failed, export_job_expired, export_job_cancelled) are delivered only to the API-key account that created the export and contain no download URL; use the authorized export status and download routes. Four subscribable event types are Pro-only and only deliver to API keys on an active Pro subscription. whale_trades_inserted is one of them, gated by the same SubscriberScope::InsiderOnly mechanism as the other three (each type carries its own LiveEventContract entry; they share the scope value). The other three: wallet_grade_changed (data: wallet, trader_id, old_grade, new_grade, direction (upgrade|downgrade), skill_index, final_score, date) fires on a Pass-2 grade transition; insider_radar_flag_raised (data: trade_id, wallet, trader_id, condition_id, suspicion_score, track, side (yes|no), size, price) fires the first time a trade's suspicion score crosses the radar flag threshold; sharp_money_flow_detected (data: condition_id, net_flow_usd, abs_net_flow_usd, dominant_side (yes|no), grade_floor (S|A|B|C|D|F), whale_trade_count, window) fires when a scheduled scanner detects ranked-trader net flow crossing a threshold (up or down) on a market, and smart_money_flow_detected is its deprecated spelling of the same event. live_sports_updated (data: event_slug, game_id, league, version, changed, observed_at, published_at, status, period, clock, live, ended, scores, series_format, snapshot_url) is ungated and fires as a bounded per-game pulse when a live game's scores, status, period or live/ended state moves: at most one delivery per game per 20 seconds, with a live or ended transition exempt from that interval, and the game clock alone never firing one. version is a durable per-game ordinal, changed lists the material fields that moved since that game's previous delivered pulse, and snapshot_url is where to re-read the whole game after a gap. Delivery signing: each delivery request carries one or more HMAC-SHA256 signatures in the x-0xinsider-signature header as comma-separated v1=<hex> candidates. During staged rotation, the current and previous signing secrets are both signed for one hour; accept any valid candidate. Each candidate is HMAC-SHA256(signing_secret, "<timestamp>.<raw_request_body>"). The signed <timestamp> is sent separately as x-0xinsider-timestamp (unix seconds). To verify a delivery: read x-0xinsider-timestamp, reject it if it differs from the current time by more than 300 seconds, recompute each candidate over "<timestamp>.<raw_body>" with the active secrets, and compare using a constant-time comparison. Each delivery also carries x-0xinsider-event-id, x-0xinsider-event-type, x-0xinsider-delivery-id, and x-0xinsider-delivery-attempt headers. Retries and disabling: ordinary transient delivery failures use stable jitter between half and the existing 60, 120, 240, 480, 960, 1920 and 3600-second upper bounds (retry_policy.retry_horizon_seconds = 7380); on 408, 429, or 5xx, a valid Retry-After delta-seconds or HTTP-date replaces that one wait and is clamped to 60–3600 seconds, while missing, malformed, past, or non-retryable-response hints use the ordinary schedule. The delivery still has eight attempts (retry_policy.max_attempts), and an eighth failure becomes dead_letter. The delivery log exposes retry_schedule_reason and next_attempt_at so a receiver can see the active schedule. Separately, an endpoint is disabled after 8 consecutive failed attempts across all of its deliveries (retry_policy.disable_after_consecutive_failures); any successful attempt resets that count, so a busy endpoint that goes down can be disabled in minutes, well before any single delivery exhausts its retries. Disabling dead-letters every delivery still queued for the endpoint and emails the account owner, within about an hour, with each disabled endpoint and its last failed response. Re-enable it with PATCH /api/v1/webhooks/{id} {"enabled": true}; re-enabling does not resend dead-lettered deliveries. Resend each one with POST /api/v1/webhooks/{id}/deliveries/{delivery_id}/redeliver, or catch up with GET /api/v1/events/feed/since from the last event you processed. GET /api/v1/webhooks/{id}/deliveries shows next_attempt_at and retry_schedule_reason for a delivery still waiting to retry.

Takes a body of the `application/json` content type, and returns a wrapper object for the known response body format(s).

Corresponds with POST /api/v1/webhooks (the `CreateWebhook` operationId).

func (*ClientWithResponses) DeleteWebhookWithResponse

func (c *ClientWithResponses) DeleteWebhookWithResponse(ctx context.Context, id int64, params *DeleteWebhookParams, reqEditors ...RequestEditorFn) (*DeleteWebhookResponse, error)

DeleteWebhookWithResponse Disable a builder webhook destination

Soft-deletes a webhook destination owned by the authenticated API key user. Existing delivery audit rows remain retained.

Returns a wrapper object for the known response body format(s).

Corresponds with DELETE /api/v1/webhooks/{id} (the `DeleteWebhook` operationId).

func (*ClientWithResponses) DownloadTraderExportWithResponse

func (c *ClientWithResponses) DownloadTraderExportWithResponse(ctx context.Context, address string, params *DownloadTraderExportParams, reqEditors ...RequestEditorFn) (*DownloadTraderExportResponse, error)

DownloadTraderExportWithResponse Download a finished trader export

Redirects (302) to a short-lived presigned URL for the finished export file while the job status is 'ready' and expires_at has not passed. The file is gzip-compressed and served with the format's Content-Type (application/json, application/x-ndjson, or text/csv). Returns 400 while the job is queued, running, cancel_requested or reconciling (poll the status route first) and for a failed or cancelled job (submit a new export); returns 410 with error.code not_found and error.reason export_expired once the retention window has passed or the file has been retired, so the redirect never points at a file that is gone.

Returns a wrapper object for the known response body format(s).

Corresponds with GET /api/v1/trader/{address}/export/download (the `DownloadTraderExport` operationId).

func (*ClientWithResponses) DownloadWhaleDatasetWithResponse added in v0.4.0

func (c *ClientWithResponses) DownloadWhaleDatasetWithResponse(ctx context.Context, jobId int64, reqEditors ...RequestEditorFn) (*DownloadWhaleDatasetResponse, error)

DownloadWhaleDatasetWithResponse Download an immutable whale dataset

Download only a ready artifact; status handles failure and cancellation. Retired artifacts return 410 at serving time. Paid export scope; jobs are private to the credential owner. Shares the 20/day owner export quota and fair worker admission with trader exports; datasets also have a combined 5/hour quota. Three worker attempts, 24-hour retention, no partial download; cancellation consumes its reservation. Coverage is whale alerts, not all provider fills.

Returns a wrapper object for the known response body format(s).

Corresponds with GET /api/v1/datasets/whale-trades/{job_id}/download (the `DownloadWhaleDataset` operationId).

func (*ClientWithResponses) ExploreMarketsWithResponse

func (c *ClientWithResponses) ExploreMarketsWithResponse(ctx context.Context, params *ExploreMarketsParams, reqEditors ...RequestEditorFn) (*ExploreMarketsResponse, error)

ExploreMarketsWithResponse Explore markets

Browse whale-active titled markets with category, platform, status, and keyword filters. Explore is Polymarket-only: the platform parameter is accepted for backward-compatibility but every request returns Polymarket markets. Paginates visible discovery entries rather than raw market rows, returns live category/platform facets alongside grouped event clusters or standalone markets, and includes total on the first page only. Each grouped event contains at most 12 markets, retaining the selected representative within that cap. Categories come straight from provider metadata (Polymarket Gamma) and facets are flat value/label/count rows.

Returns a wrapper object for the known response body format(s).

Corresponds with GET /api/v1/markets/explore (the `ExploreMarkets` operationId).

func (*ClientWithResponses) GetAccountIdentityWithResponse added in v0.2.0

func (c *ClientWithResponses) GetAccountIdentityWithResponse(ctx context.Context, params *GetAccountIdentityParams, reqEditors ...RequestEditorFn) (*GetAccountIdentityResponse, error)

GetAccountIdentityWithResponse Identify the authenticated account and credential

Returns caller-owned account and credential IDs, credential validity, paid-data entitlement and approved scopes. Null scopes mean full legacy developer-key access. Valid credentials can use this control-plane diagnostic path after paid access lapses; data routes still require active paid access. OAuth grants and named integration keys need read scope. Does not return credentials, payment details or personal contact details.

Returns a wrapper object for the known response body format(s).

Corresponds with GET /api/v1/me (the `GetAccountIdentity` operationId).

func (*ClientWithResponses) GetApiDiscoveryWithResponse

func (c *ClientWithResponses) GetApiDiscoveryWithResponse(ctx context.Context, params *GetApiDiscoveryParams, reqEditors ...RequestEditorFn) (*GetApiDiscoveryResponse, error)

GetApiDiscoveryWithResponse API discovery

Unauthenticated API-origin discovery document pointing agents to the canonical API base URL, full docs, web-origin OpenAPI spec, health check, and the COMPLETE index of authenticated data routes. data.authenticated_routes is the whole authenticated route surface, not a sample: it carries every authenticated route this spec documents, so an agent that starts here never has to guess a path. The index is a hand-maintained const in backend/src/api_v1/discovery.rs kept in step with this spec by review; no automated check compares the two, so treat this spec as authoritative if they ever disagree.

Returns a wrapper object for the known response body format(s).

Corresponds with GET /api/v1 (the `GetApiDiscovery` operationId).

func (*ClientWithResponses) GetCoverageWithResponse added in v0.4.0

func (c *ClientWithResponses) GetCoverageWithResponse(ctx context.Context, params *GetCoverageParams, reqEditors ...RequestEditorFn) (*GetCoverageResponse, error)

GetCoverageWithResponse Which reads the API serves for Polymarket

Unauthenticated discovery endpoint that declares which V1 data surfaces the API serves for Polymarket, the one venue it covers. Every capability reports supported. Canonical since #16315; GET /api/v1/platforms is its deprecated alias with the same body.

Returns a wrapper object for the known response body format(s).

Corresponds with GET /api/v1/coverage (the `GetCoverage` operationId).

func (*ClientWithResponses) GetDailyReportSnapshotWithResponse

func (c *ClientWithResponses) GetDailyReportSnapshotWithResponse(ctx context.Context, params *GetDailyReportSnapshotParams, reqEditors ...RequestEditorFn) (*GetDailyReportSnapshotResponse, error)

GetDailyReportSnapshotWithResponse Daily report snapshot

Returns a dated daily whale-activity report snapshot with source_range, snapshot.status, completeness, and reconciliation metadata. Report whale volume is local whale-alert activity volume, not provider lifetime trader volume.

Returns a wrapper object for the known response body format(s).

Corresponds with GET /api/v1/reports/daily (the `GetDailyReportSnapshot` operationId).

func (*ClientWithResponses) GetEventReplaySinceWithResponse

func (c *ClientWithResponses) GetEventReplaySinceWithResponse(ctx context.Context, params *GetEventReplaySinceParams, reqEditors ...RequestEditorFn) (*GetEventReplaySinceResponse, error)

GetEventReplaySinceWithResponse Replay public large-trade events

Returns durable public large-trade events strictly after an opaque cursor, in commit order: events are ordered by the position at which their write became visible to every reader (whale_alerts.inserted_xid), then by whale_alerts.id, and a page never reaches past the oldest write transaction still open when it was read. A trade whose id is lower than one already delivered but whose write finished later is therefore delivered on a later request instead of being skipped (#16180). This is a separate API-key contract from the browser/session /api/events/feed stream: browser-only and private alert, following, radar, and position patch events are excluded until they have a durable public outbox.

Returns a wrapper object for the known response body format(s).

Corresponds with GET /api/v1/events/feed/since (the `GetEventReplaySince` operationId).

func (*ClientWithResponses) GetGameWithResponse added in v0.4.0

func (c *ClientWithResponses) GetGameWithResponse(ctx context.Context, eventSlug string, params *GetGameParams, reqEditors ...RequestEditorFn) (*GetGameResponse, error)

GetGameWithResponse Get one game

The same game object GET /api/v1/games returns, for one 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. A slug outside the published coverage returns 404, including a real Polymarket event in a sport this deployment does not serve; GET /api/v1/games names what is covered.

Returns a wrapper object for the known response body format(s).

Corresponds with GET /api/v1/games/{event_slug} (the `GetGame` operationId).

func (*ClientWithResponses) GetHealthWithResponse

func (c *ClientWithResponses) GetHealthWithResponse(ctx context.Context, params *GetHealthParams, reqEditors ...RequestEditorFn) (*GetHealthResponse, error)

GetHealthWithResponse Health check

Returns API health status. No authentication required. Limited to 120 requests per minute per IP.

Returns a wrapper object for the known response body format(s).

Corresponds with GET /api/v1/health (the `GetHealth` operationId).

func (*ClientWithResponses) GetInsiderRadarFlagWithResponse deprecated

func (c *ClientWithResponses) GetInsiderRadarFlagWithResponse(ctx context.Context, id string, params *GetInsiderRadarFlagParams, reqEditors ...RequestEditorFn) (*GetInsiderRadarFlagResponse, error)

GetInsiderRadarFlagWithResponse Get insider radar flag by ID

Deprecated alias of GET /api/v1/suspicious-trades/{id} (2026-09-23), kept live with no retirement date; responses carry Deprecation and a Link rel="successor-version" to it. The envelope keeps object: radar_flag, so an integration that branches on it keeps working here. Returns one suspicious-trading radar flag by raw whale_alerts.id or the rf_-prefixed id emitted by list responses.

Returns a wrapper object for the known response body format(s).

Corresponds with GET /api/v1/insider-radar/{id} (the `GetInsiderRadarFlag` operationId).

Deprecated: this operation has been marked as deprecated upstream, but no `x-deprecated-reason` was set

func (*ClientWithResponses) GetLargeTradeWithResponse added in v0.4.0

func (c *ClientWithResponses) GetLargeTradeWithResponse(ctx context.Context, id string, params *GetLargeTradeParams, reqEditors ...RequestEditorFn) (*GetLargeTradeResponse, error)

GetLargeTradeWithResponse Get large trade by ID

Returns one large trade by raw whale_alerts.id or the wt_-prefixed id emitted by list and history responses.

Returns a wrapper object for the known response body format(s).

Corresponds with GET /api/v1/large-trades/{id} (the `GetLargeTrade` operationId).

func (*ClientWithResponses) GetMarketCandlesWithResponse

func (c *ClientWithResponses) GetMarketCandlesWithResponse(ctx context.Context, conditionId string, params *GetMarketCandlesParams, reqEditors ...RequestEditorFn) (*GetMarketCandlesResponse, error)

GetMarketCandlesWithResponse Get market OHLC price candles

Provider-first bucketed OHLC price candles for a market's outcome tokens, derived from the stored token_price_snapshots series (the same series the market-detail chart renders; covers open and resolved markets). Because the stored data is daily, a 1d bucket typically carries one point so its open/high/low/close all equal that day's close; 1w aggregates real OHLC across the observed daily closes. No intraday fidelity is fabricated. Query field names and recognized values are URL-decoded; duplicate recognized fields use the last value and unknown fields are ignored. When both bounds are present, from must be less than or equal to to; malformed or inverted bounds answer 400.

Returns a wrapper object for the known response body format(s).

Corresponds with GET /api/v1/market/{condition_id}/candles (the `GetMarketCandles` operationId).

func (*ClientWithResponses) GetMarketContextMarkdownWithResponse added in v0.2.0

func (c *ClientWithResponses) GetMarketContextMarkdownWithResponse(ctx context.Context, conditionId string, params *GetMarketContextMarkdownParams, reqEditors ...RequestEditorFn) (*GetMarketContextMarkdownResponse, error)

GetMarketContextMarkdownWithResponse Get market context (Markdown)

Authenticated, self-contained Polymarket market evidence document. Renders the same typed data as the market snapshot with trust included: identity, outcome labels and tokens, cached quotes, liquidity, live sports, and per-source freshness or unavailable reasons. Provider text is encoded as indented JSON data. Accepts raw or mkt_-prefixed condition IDs. Unknown markets return 404. No ETag or conditional requests; use the snapshot JSON route for those.

Returns a wrapper object for the known response body format(s).

Corresponds with GET /api/v1/market/{condition_id}/context.md (the `GetMarketContextMarkdown` operationId).

func (*ClientWithResponses) GetMarketFlowWithResponse added in v0.4.0

func (c *ClientWithResponses) GetMarketFlowWithResponse(ctx context.Context, conditionId string, params *GetMarketFlowParams, reqEditors ...RequestEditorFn) (*GetMarketFlowResponse, error)

GetMarketFlowWithResponse Get a market's flow and top positions

Canonical since #16312; GET /api/v1/market/{condition_id}/intel is its deprecated alias and serves the same body under object market_intel. One market's flow and top positions: the signed flow of every tracked large trade in the window (net_flow_usd and its YES or NO direction), the large-trade count, gross buy and sell volumes, and the top five graded trader positions.

Returns a wrapper object for the known response body format(s).

Corresponds with GET /api/v1/market/{condition_id}/flow (the `GetMarketFlow` operationId).

func (*ClientWithResponses) GetMarketHoldersWithResponse added in v0.2.0

func (c *ClientWithResponses) GetMarketHoldersWithResponse(ctx context.Context, conditionId string, params *GetMarketHoldersParams, reqEditors ...RequestEditorFn) (*GetMarketHoldersResponse, error)

GetMarketHoldersWithResponse List a market's graded holders

The graded holder roster of one market, the list a Pick of the Day shows for its market, for any Polymarket market: every S/A/B wallet with open shares on either outcome, from a complete provider holder scan, each with its shares, Polymarket's own currentValue for the leg, its grade, its win record in the market's category, and its badges. Both outcomes are listed; a wallet holding both is listed once on its net side. Ordered by current_value_usd DESC, then shares DESC, then address. The roster is computed at most once a minute per market and shared by every caller; a page is cut from that roster, so paging is cheap and `total` is exact. The route never widens past the graded cohort: `scan.wallet_count` reports every wallet the walk saw, graded or not. An incomplete, unstable or failed scan is a 503 with Retry-After, never a shorter list. A complete scan in which no S, A or B wallet holds either outcome is a 200 with an empty holders list and zero totals; retrying cannot change it. The cohort is S, A and B by the wallet's current grade (`traders.latest_grade`); a C, D, F or ungraded wallet is never listed here and appears only inside `scan.wallet_count`. A count here will not match GET /api/v1/positions for the same market, and the cohort is only one of three reasons: /positions reads the `wallet_positions` mirror rather than this live provider scan, and without a `wallet` its `min_size` defaults to 100 USD, so it drops the smaller legs this route keeps. Read a difference as all three, never as a grade count. This is current state and takes no as-of parameter: the roster is at most 60 s old over a provider walk at most 180 s old, and `scan.fetched_at` is the only timestamp on it. For a point-in-time roster, snapshot this route yourself on your own schedule; the one frozen roster the API serves is `display_holders` on GET /api/v1/pick-of-the-day, for that pick's market and backed side at publication.

Returns a wrapper object for the known response body format(s).

Corresponds with GET /api/v1/market/{condition_id}/holders (the `GetMarketHolders` operationId).

func (*ClientWithResponses) GetMarketIntelWithResponse deprecated

func (c *ClientWithResponses) GetMarketIntelWithResponse(ctx context.Context, conditionId string, params *GetMarketIntelParams, reqEditors ...RequestEditorFn) (*GetMarketIntelResponse, error)

GetMarketIntelWithResponse Get market intelligence

Deprecated since #16312: use GET /api/v1/market/{condition_id}/flow, which serves the same body under object market_flow. This path stays live, keeps object market_intel, and answers with Deprecation and successor Link headers. One market's flow and top positions: the signed flow of every tracked large trade in the window (net_flow_usd and its YES or NO direction), the large-trade count, gross buy and sell volumes, and the top five graded trader positions.

Returns a wrapper object for the known response body format(s).

Corresponds with GET /api/v1/market/{condition_id}/intel (the `GetMarketIntel` operationId).

Deprecated: this operation has been marked as deprecated upstream, but no `x-deprecated-reason` was set

func (*ClientWithResponses) GetMarketSnapshotWithResponse

func (c *ClientWithResponses) GetMarketSnapshotWithResponse(ctx context.Context, conditionId string, params *GetMarketSnapshotParams, reqEditors ...RequestEditorFn) (*GetMarketSnapshotResponse, error)

GetMarketSnapshotWithResponse Get market live snapshot

Provider-first market card snapshot with canonical identity, outcome labels, cached top-of-book when available, liquidity, live sports context, and explicit freshness/unavailable states.

Returns a wrapper object for the known response body format(s).

Corresponds with GET /api/v1/market/{condition_id}/snapshot (the `GetMarketSnapshot` operationId).

func (*ClientWithResponses) GetMonthlyReportSnapshotWithResponse

func (c *ClientWithResponses) GetMonthlyReportSnapshotWithResponse(ctx context.Context, params *GetMonthlyReportSnapshotParams, reqEditors ...RequestEditorFn) (*GetMonthlyReportSnapshotResponse, error)

GetMonthlyReportSnapshotWithResponse Monthly report snapshot

Returns a UTC monthly whale-activity report snapshot with source_range, completeness, and reconciliation metadata.

Returns a wrapper object for the known response body format(s).

Corresponds with GET /api/v1/reports/monthly (the `GetMonthlyReportSnapshot` operationId).

func (*ClientWithResponses) GetPickOfTheDayArchiveWithResponse

func (c *ClientWithResponses) GetPickOfTheDayArchiveWithResponse(ctx context.Context, params *GetPickOfTheDayArchiveParams, reqEditors ...RequestEditorFn) (*GetPickOfTheDayArchiveResponse, error)

GetPickOfTheDayArchiveWithResponse Get the Pick of the Day track record

Returns every published pick with its outcome, unit score, closing-line value, and the rolling hit rate.

Resolved picks are public. A pending pick's backed side appears only for an authenticated Pro key.

Each row carries a CLV value or the reason it was not measured. Coverage divides measured rows by resolved rows published before kickoff. A post-kickoff publication is `not_applicable`.

Returns a wrapper object for the known response body format(s).

Corresponds with GET /api/v1/pick-of-the-day/archive (the `GetPickOfTheDayArchive` operationId).

func (*ClientWithResponses) GetPickOfTheDayLedgerWithResponse added in v0.2.0

func (c *ClientWithResponses) GetPickOfTheDayLedgerWithResponse(ctx context.Context, params *GetPickOfTheDayLedgerParams, reqEditors ...RequestEditorFn) (*GetPickOfTheDayLedgerResponse, error)

GetPickOfTheDayLedgerWithResponse Get the Pick of the Day commitment ledger

Returns the pre-game commitment for every published pick, so the public track record can be checked by someone who was not watching when the pick dropped.

One entry per (pick_date, pick_rank), ascending by pick_date then pick_rank, in one of three states. `sealed` is a live pick: the hash, the algorithm, the seal instant and the kickoff, and nothing that states a side or a price. `opened` is a settled pick: the nonce and the exact canonical payload the hash was taken over. `uncommitted` is a pick with no commitment -- published before the scheme existed, or one that reached kickoff unsealed -- named rather than omitted.

To verify an opened entry: serialize nothing. Take the bytes of the `payload` object exactly as received, append the `commitment_nonce` decoded from hex, and sha256 the result; it equals `commitment_hash`. The payload is canonical JSON -- keys sorted by UTF-8 byte value, no insignificant whitespace, decimals as strings at full stored precision, timestamps whole-second UTC with a literal Z -- and it is served byte for byte as it was hashed.

This is a proof contract, not the archive's display contract: nothing here is formatted for rendering, so an entry changes only when the pick does. A commitment is never written after kickoff and never rewritten by an outcome correction; `resolved_at` moving under an unchanged `commitment_hash` is a corrected market re-mapping an already-settled pick.

Returns a wrapper object for the known response body format(s).

Corresponds with GET /api/v1/pick-of-the-day/ledger (the `GetPickOfTheDayLedger` operationId).

func (*ClientWithResponses) GetPickOfTheDayWithResponse

func (c *ClientWithResponses) GetPickOfTheDayWithResponse(ctx context.Context, params *GetPickOfTheDayParams, reqEditors ...RequestEditorFn) (*GetPickOfTheDayResponse, error)

GetPickOfTheDayWithResponse Get today's Pick of the Day

Returns the published picks for the current product day. Pro tier.

`picks` holds up to ten ranked picks. Each pick carries the backed side, the pre-game price, the flat stake (`stake_usd`, 1000) and its return (`return_usd`; `return_per_100` keeps the literal $100 basis), the sharp-money holders, the grade, and a thesis. The price is frozen before kickoff. A prior day's pick never appears here; read the archive for it.

`scheduled_picks` lists same-day slots that are selected but not released yet. Each slot exposes only `pick_rank`, `release_at`, and `kickoff`.

When no pick is published for the current product day, the endpoint returns `404` with `error.code="not_found"` and `error.reason="pick_not_released"`. Branch on the reason; the code is frozen. The `404` is a schedule, not an outage.

Do not poll. Read `Retry-After` or `error.retry_at` and schedule one request for that instant. The `404` response below says how the instant is chosen.

Returns a wrapper object for the known response body format(s).

Corresponds with GET /api/v1/pick-of-the-day (the `GetPickOfTheDay` operationId).

func (*ClientWithResponses) GetPlatformsWithResponse deprecated

func (c *ClientWithResponses) GetPlatformsWithResponse(ctx context.Context, params *GetPlatformsParams, reqEditors ...RequestEditorFn) (*GetPlatformsResponse, error)

GetPlatformsWithResponse Get platform capability matrix

Deprecated since #16315: use GET /api/v1/coverage, which serves the same body. This path stays live and answers with Deprecation and successor Link headers. Unauthenticated discovery endpoint that declares which V1 data surfaces the API serves for Polymarket, the one venue it covers. Every capability reports supported.

Returns a wrapper object for the known response body format(s).

Corresponds with GET /api/v1/platforms (the `GetPlatforms` operationId).

Deprecated: this operation has been marked as deprecated upstream, but no `x-deprecated-reason` was set

func (*ClientWithResponses) GetPositionTimelineByIdWithResponse

func (c *ClientWithResponses) GetPositionTimelineByIdWithResponse(ctx context.Context, trader string, params *GetPositionTimelineByIdParams, reqEditors ...RequestEditorFn) (*GetPositionTimelineByIdResponse, error)

GetPositionTimelineByIdWithResponse Get a trader's position timeline (unified identity resolver)

Unified trader-timeline route (#4975). {trader} accepts all five identity shapes - 0x... wallet, username, trd_-prefixed trader id, bare integer id, and @username (a username lookup only, for all-digit usernames) - resolved by the single shared trader-identity resolver. Returns stored Polymarket fills for one tracked trader in one market, newest first, with server-computed running_amount and running_avg_price. Only HOT and WARM tier traders are tracked; other traders return 404. Response payload matches the singular GET /api/v1/trader/{address}/position-timeline route for the same (trader, market), except for the per-request meta.request_id. The prior integer-id-only variant is preserved: the same path now accepts every identity shape.

Returns a wrapper object for the known response body format(s).

Corresponds with GET /api/v1/traders/{trader}/position-timeline (the `GetPositionTimelineById` operationId).

func (*ClientWithResponses) GetPositionTimelineWithResponse

func (c *ClientWithResponses) GetPositionTimelineWithResponse(ctx context.Context, address string, params *GetPositionTimelineParams, reqEditors ...RequestEditorFn) (*GetPositionTimelineResponse, error)

GetPositionTimelineWithResponse Get a trader's position timeline for one market

Returns stored Polymarket fills for one tracked trader in one market, newest first, with outcome-specific running_amount and running_avg_price including earlier stored fills before pagination. The {address} segment accepts the same identity shapes as the plural alias: wallet, username, trd_-prefixed trader id, bare integer traders.id, or @username, resolved with precedence @username -> wallet -> trd_ -> integer -> username. A leading @ resolves the rest as a username only, which is how to reach an all-digit username that the integer rule reads as an id. Only HOT and WARM traders are served; others return 404. The cumulative buy-weighted fill average is unchanged by sells. Split, merge, redemption and neg-risk activity are excluded; totals are not complete holdings or provider current-position avgPrice. Cursor-paginated; values stay stable across page sizes/cursors for unchanged source history.

Returns a wrapper object for the known response body format(s).

Corresponds with GET /api/v1/trader/{address}/position-timeline (the `GetPositionTimeline` operationId).

func (*ClientWithResponses) GetReportsWithResponse

func (c *ClientWithResponses) GetReportsWithResponse(ctx context.Context, params *GetReportsParams, reqEditors ...RequestEditorFn) (*GetReportsResponse, error)

GetReportsWithResponse Unified report snapshot (granularity selector)

Unified convenience route (#4975) that consolidates the three singular report routes. Dispatches to the exact per-granularity cap (daily 50, weekly 100, monthly 200) and date window the legacy /api/v1/reports/{daily,weekly,monthly} routes use, so the response body is byte-identical to the matching legacy route for the same period. An ISO weekly period is a durable canonical snapshot; an explicit weekly from,to pair is an exact ephemeral range limited to 31 inclusive UTC days and never creates a persisted snapshot identity. A wider explicit range returns 400 invalid_query. The three legacy routes stay live. Also reachable via the MCP get_report selector.

Returns a wrapper object for the known response body format(s).

Corresponds with GET /api/v1/reports (the `GetReports` operationId).

func (*ClientWithResponses) GetStreamWithResponse

func (c *ClientWithResponses) GetStreamWithResponse(ctx context.Context, params *GetStreamParams, reqEditors ...RequestEditorFn) (*GetStreamResponse, error)

GetStreamWithResponse Resumable real-time event stream (SSE)

Server-Sent Events stream of the live feed envelopes the platform already broadcasts (whale-trade pulses and other public/Pro feed events). Forwards the same backend-owned envelope shape as the internal feed; no provider data is recomputed. Authenticated via the oxi_sk Bearer key like every other /api/v1 endpoint, and limited to a small number of concurrent connections per API key and a cluster-wide ceiling across all keys (HTTP 429 with Retry-After when either cap is exceeded; HTTP 503 with Retry-After if a required Redis service is briefly unavailable). Each delivered frame carries an SSE id from one cluster-shared sequence that remains valid across backend replicas and process restarts. Reconnect with the Last-Event-ID header (or the last_event_id / seq query fallback) to replay the missed window before resuming live. When the requested resume point is older than the retained window, ahead of the current sequence, separated from live delivery by an uncovered gap, or the server's sequence counter restarts mid-stream (a completeness.status of truncated, lagged, or reset), the stream emits a resync marker event (event: resync) instead of silently skipping frames. Idle connections receive periodic ': keep-alive' comment lines. This is a long-lived response: keep the connection open and read frames as they arrive. Authorization is re-checked for as long as the stream is open: every 30 seconds the server re-resolves the key the stream was opened with, so a key that is revoked, expired or rotated, or an account that is deleted, locked or no longer subscribed, ends the stream within 40 seconds (30 seconds plus the credential cache's 10-second bound) with one terminal 'event: error' frame and then closes the connection. The frame's JSON is { type: 'error', error: <the same error object a reconnect is answered with: code, message, doc_url, reason, retry_at>, retry: <boolean> }; retry is false for every credential and account refusal (a reconnect is refused with the same 401, 402, 403 or 423), and true only when the credential store stopped answering (code database_unavailable, after 90 seconds without a confirmed check), in which case reconnect after the error's retry_at with Last-Event-ID set to the frame's id to resume.

Returns a wrapper object for the known response body format(s).

Corresponds with GET /api/v1/stream (the `GetStream` operationId).

func (*ClientWithResponses) GetSuspiciousTradeWithResponse added in v0.4.0

func (c *ClientWithResponses) GetSuspiciousTradeWithResponse(ctx context.Context, id string, params *GetSuspiciousTradeParams, reqEditors ...RequestEditorFn) (*GetSuspiciousTradeResponse, error)

GetSuspiciousTradeWithResponse Get suspicious trade by ID

Returns one suspicious trade by raw whale_alerts.id or the rf_-prefixed id emitted by list responses. Canonical since 2026-09-23; GET /api/v1/insider-radar/{id} is its deprecated alias and keeps answering object: radar_flag.

Returns a wrapper object for the known response body format(s).

Corresponds with GET /api/v1/suspicious-trades/{id} (the `GetSuspiciousTrade` operationId).

func (*ClientWithResponses) GetTraderCategoryRecordsWithResponse added in v0.2.0

func (c *ClientWithResponses) GetTraderCategoryRecordsWithResponse(ctx context.Context, address string, params *GetTraderCategoryRecordsParams, reqEditors ...RequestEditorFn) (*GetTraderCategoryRecordsResponse, error)

GetTraderCategoryRecordsWithResponse Get trader category win records

Returns one wallet's win record in every canonical category it has a settled market in: wins, decided (wins plus losses) and the rate, per category, busiest category first. These are the same counts the Pick of the Day holder chips carry. The Esports record also carries games: the wallet's record in each esports title it has a settled market in (LoL, CS2, Dota 2, Valorant, ...), the same per-game record the holder chips and GET /api/v1/market/{condition_id}/holders name in category_win_rate_game, with the same counts, floor and status rule; the Esports row itself stays the whole bucket, which is what a chip falls back to when a game record is thin. The basis is every settled market at any position size, which is NOT the basis of category_strengths on GET /api/v1/trader/{address}?expand=categories: that breakdown keeps the 20 USD notional floor and the entry-price rule its ranks depend on, so the two legitimately differ, in both directions. Measured on production 2026-09-22 over the 122,497 wallet-category pairs with at least 20 decided markets on both bases: the floored rate was higher in 56.5% of pairs, lower in 34.5% and equal in 9.0%, median +0.6 points, p10 -4.6, p90 +9.8, and 14.0% of pairs differ by 10 points or more. Neither rate corrects the other. The difference is not only small positions: on a 1-in-250 wallet sample the same day, admitted markets won 56.6% while markets dropped by the notional floor alone won 45.2% and markets dropped by the entry-price rule alone won 48.7%. The two tables also run on different clocks, this one rebuilt daily and that breakdown updated incrementally, so a same-day read can differ on timing alone. A category or game with fewer than min_decided_for_win_rate decided markets keeps its counts and returns win_rate null with status not_enough_data, so a caller can apply its own sample rule. A category the wallet has no settled market in is omitted entirely, and so is a game: an absent entry means no record, never a 0% record. A resolved trader with no settled market returns an empty records array (HTTP 200); an unknown address returns 404.

Returns a wrapper object for the known response body format(s).

Corresponds with GET /api/v1/trader/{address}/categories (the `GetTraderCategoryRecords` operationId).

func (*ClientWithResponses) GetTraderContextMarkdownWithResponse

func (c *ClientWithResponses) GetTraderContextMarkdownWithResponse(ctx context.Context, address string, params *GetTraderContextMarkdownParams, reqEditors ...RequestEditorFn) (*GetTraderContextMarkdownResponse, error)

GetTraderContextMarkdownWithResponse Get trader context (Markdown)

Returns a single human- and LLM-readable Markdown briefing for one trader: identity, grade, P&L, position coverage, and freshness. The path accepts an Ethereum wallet address (0x...), a known trader username, or a trd_-prefixed trader ID emitted by this API. A wallet address this API does not track yet still returns 200 with a degraded 'not yet synced' document (no 404). A value that is not a wallet address and matches no username or trader ID this API knows returns 404 not_found with error.param address, as the JSON error envelope. The Markdown variant does not emit an ETag and does not support conditional requests; use the JSON variant (drop the .md suffix) for ETag/If-None-Match handling.

Returns a wrapper object for the known response body format(s).

Corresponds with GET /api/v1/trader/{address}/context.md (the `GetTraderContextMarkdown` operationId).

func (*ClientWithResponses) GetTraderContextWithResponse

func (c *ClientWithResponses) GetTraderContextWithResponse(ctx context.Context, address string, params *GetTraderContextParams, reqEditors ...RequestEditorFn) (*GetTraderContextResponse, error)

GetTraderContextWithResponse Get trader context (JSON)

Returns a single structured context object for one trader: the full trader profile (same shape as GET /api/v1/trader/{address}) plus a position_summary (sync coverage and realized/unrealized P&L rollups, with an as_of open-position freshness clock), the data_as_of freshness timestamp (the open-position data's latest /positions snapshot, else last completed sync; the snapshot advances only open positions, so resolved counts and win rate still date to the last full sync; native realized P&L follows its accounting snapshot), and a freshness_note describing the point-in-time snapshot semantics. The path accepts an Ethereum wallet address (0x...), a known trader username, or a trd_-prefixed trader ID emitted by this API. position_summary is omitted when the trader is not in the local database or native net economics is unavailable; realized fields remain numeric when present; a wallet address this API does not track yet returns 200 with sync_status 'unknown' on the nested trader (no 404), while a value that is not a wallet address and matches no username or trader ID this API knows returns 404 not_found with error.param address. Append .md to the path for the Markdown rendering.

Returns a wrapper object for the known response body format(s).

Corresponds with GET /api/v1/trader/{address}/context (the `GetTraderContext` operationId).

func (*ClientWithResponses) GetTraderExportSnapshotWithResponse

func (c *ClientWithResponses) GetTraderExportSnapshotWithResponse(ctx context.Context, address string, params *GetTraderExportSnapshotParams, reqEditors ...RequestEditorFn) (*GetTraderExportSnapshotResponse, error)

GetTraderExportSnapshotWithResponse Trader export snapshot metadata

Returns export source-range, completeness, volume reconciliation, row-count estimate, and large-export policy for one trader. To download the full dataset programmatically, POST to this same path to submit an async export job (json | ndjson | csv), then poll the status route and follow the download route once ready.

Returns a wrapper object for the known response body format(s).

Corresponds with GET /api/v1/trader/{address}/export (the `GetTraderExportSnapshot` operationId).

func (*ClientWithResponses) GetTraderExportStatusWithResponse

func (c *ClientWithResponses) GetTraderExportStatusWithResponse(ctx context.Context, address string, params *GetTraderExportStatusParams, reqEditors ...RequestEditorFn) (*GetTraderExportStatusResponse, error)

GetTraderExportStatusWithResponse Poll a trader export job

Returns the job resource for a submitted export: status (queued | running | cancel_requested | reconcile_required | ready | failed | expired | cancelled), terminal, next_action and poll_after_s, the lifecycle timestamps, the retention window (expires_at) and, once the file is written, data_as_of and the artifact identity. A ready job past expires_at reads expired; a queued or reconciling job past expires_at reads failed. A running job its owner cancelled reads cancel_requested until the worker stops, then cancelled. failed, cancelled and expired jobs stay readable for 48 hours, then 404.

Returns a wrapper object for the known response body format(s).

Corresponds with GET /api/v1/trader/{address}/export/status (the `GetTraderExportStatus` operationId).

func (*ClientWithResponses) GetTraderGradeAtWithResponse added in v0.4.0

func (c *ClientWithResponses) GetTraderGradeAtWithResponse(ctx context.Context, address string, params *GetTraderGradeAtParams, reqEditors ...RequestEditorFn) (*GetTraderGradeAtResponse, error)

GetTraderGradeAtWithResponse Get a trader grade proven visible at a past instant

Reads one trader's recorded grade at as_of from prospective visibility evidence. Before the first recorded observation, after deletion, or during a grade-transition gap, status is unknown and grade is null; a recorded ungraded trader instead has status ungraded. available_from is the first proven observation for this trader, not a claim that earlier grades can be reconstructed. observed_at is when the grade writer began the transition and published_by is the later confirmation that the row was committed, not an exact commit time. Older observations have null model_version, model_build_sha and source_observed_by; do not substitute a current grade or a dated ranking row. The requested event time, publication bounds and model provenance are separate. Use a grade only when status is graded. This is additive; the current-grade trader and leaderboard operations do not change.

Returns a wrapper object for the known response body format(s).

Corresponds with GET /api/v1/trader/{address}/grade-at (the `GetTraderGradeAt` operationId).

func (*ClientWithResponses) GetTraderPnlWithResponse

func (c *ClientWithResponses) GetTraderPnlWithResponse(ctx context.Context, address string, params *GetTraderPnlParams, reqEditors ...RequestEditorFn) (*GetTraderPnlResponse, error)

GetTraderPnlWithResponse Get trader P&L time series

Returns a trader's daily P&L time series and pre-derived stats from the precomputed daily_pnl read model: entries (daily cumulative P&L), period stats (all/90d/30d/7d), monthly aggregation, per-year totals, and the drawdown series. Reads the refreshed read model, not a per-request equity replay. A resolved trader with no daily P&L returns an empty structured object (HTTP 200); an unknown address returns 404. Optional from/to and sections bound what comes back: from/to clip the two daily series (entries, drawdown) to an inclusive UTC date window, and sections names which of the five sections the body carries. A request that sends none of the three receives the whole object exactly as before, down to the ETag. A body built with any of them carries data.view, which names the bounds, the sections applied, the size of the full series and the last daily point before the window; a section the request excluded is absent from data, not null or empty. stats, monthly and year_totals keep their full-period definitions whatever the window says, so an economic value never changes meaning because a chart asked for seven days.

Returns a wrapper object for the known response body format(s).

Corresponds with GET /api/v1/trader/{address}/pnl (the `GetTraderPnl` operationId).

func (*ClientWithResponses) GetTraderWithResponse

func (c *ClientWithResponses) GetTraderWithResponse(ctx context.Context, address string, params *GetTraderParams, reqEditors ...RequestEditorFn) (*GetTraderResponse, error)

GetTraderWithResponse Get trader

Returns a trader's grade (S through F; ranked about 95% by realized profit, with calibration, track record, and consistency as a tie-breaker and proven-trader guardrails), P&L, win rate, and optional strategy/category data. The path accepts either an Ethereum wallet address, a known trader username, or a trd_-prefixed trader ID emitted by this API. A wallet address this API does not track yet returns 200 with sync_status "unknown" instead of 404, so it can be polled. A value that is not a wallet address and matches no username or trader ID this API knows returns 404 not_found with error.param address; it is never echoed back as a trader address. The additive `pnl.exact.realized` and `stats.exact.total_volume` fields carry decimal strings from verified source atoms with unit, scale and basis metadata; parse them with decimal-safe arithmetic and keep the existing numeric twins for display.

Returns a wrapper object for the known response body format(s).

Corresponds with GET /api/v1/trader/{address} (the `GetTrader` operationId).

func (*ClientWithResponses) GetUsageWithResponse

func (c *ClientWithResponses) GetUsageWithResponse(ctx context.Context, params *GetUsageParams, reqEditors ...RequestEditorFn) (*GetUsageResponse, error)

GetUsageWithResponse Inspect current API usage without spending primary request quota

Returns the authenticated caller sliding-window request budget, UTC-day usage and monthly quota. This control-plane endpoint remains available for a valid credential after paid data access lapses and does not increment the primary Redis rate-limit counter, monthly quota or API usage table; it shares a separate 100 reads/minute per-user inspection bucket with GET /api/v1/me. UTC-day totals use finalized quarter-hour rollups plus the disjoint raw interval through request time; unavailable rollup progress returns an error.

Returns a wrapper object for the known response body format(s).

Corresponds with GET /api/v1/usage (the `GetUsage` operationId).

func (*ClientWithResponses) GetWebhookWithResponse

func (c *ClientWithResponses) GetWebhookWithResponse(ctx context.Context, id int64, params *GetWebhookParams, reqEditors ...RequestEditorFn) (*GetWebhookResponse, error)

GetWebhookWithResponse Get one builder webhook destination

Returns one webhook destination owned by the authenticated API key user.

Returns a wrapper object for the known response body format(s).

Corresponds with GET /api/v1/webhooks/{id} (the `GetWebhook` operationId).

func (*ClientWithResponses) GetWeeklyReportSnapshotWithResponse

func (c *ClientWithResponses) GetWeeklyReportSnapshotWithResponse(ctx context.Context, params *GetWeeklyReportSnapshotParams, reqEditors ...RequestEditorFn) (*GetWeeklyReportSnapshotResponse, error)

GetWeeklyReportSnapshotWithResponse Weekly report snapshot

Returns a weekly whale-activity report snapshot. Pass an ISO YYYY-WW token for a durable canonical snapshot, or an exact from/to UTC range of at most 31 inclusive days for an ephemeral response. The response identifies closed ranges as final and current ranges as rolling.

Returns a wrapper object for the known response body format(s).

Corresponds with GET /api/v1/reports/weekly (the `GetWeeklyReportSnapshot` operationId).

func (*ClientWithResponses) GetWhaleDatasetStatusWithResponse added in v0.4.0

func (c *ClientWithResponses) GetWhaleDatasetStatusWithResponse(ctx context.Context, jobId int64, reqEditors ...RequestEditorFn) (*GetWhaleDatasetStatusResponse, error)

GetWhaleDatasetStatusWithResponse Read a whale dataset job

Read queued, running, cancel_requested, ready, failed, reconcile_required, expired or cancelled. Poll only while next_action is poll, after poll_after_s. Ready manifests contain count, content and compressed SHA-256, schema, filters, source, horizon, expiry and replay continuation. Deltas do not retain the finite time filter and can repeat rows; deduplicate by wt_ ID (payload.whale_alert_id when not expanded). This is an insertion feed, not update/delete CDC. Paid export scope; jobs are private to the credential owner. Shares the 20/day owner export quota and fair worker admission with trader exports; datasets also have a combined 5/hour quota. Three worker attempts, 24-hour retention, no partial download; cancellation consumes its reservation. Coverage is whale alerts, not all provider fills.

Returns a wrapper object for the known response body format(s).

Corresponds with GET /api/v1/datasets/whale-trades/{job_id} (the `GetWhaleDatasetStatus` operationId).

func (*ClientWithResponses) GetWhaleTradeWithResponse deprecated

func (c *ClientWithResponses) GetWhaleTradeWithResponse(ctx context.Context, id string, params *GetWhaleTradeParams, reqEditors ...RequestEditorFn) (*GetWhaleTradeResponse, error)

GetWhaleTradeWithResponse Get whale trade by ID

Returns one whale trade by raw whale_alerts.id or the wt_-prefixed id emitted by list and history responses. Deprecated alias of GET /api/v1/large-trades/{id}, kept live and never removed (#16304); every response carries `Deprecation: @1790047200` (RFC 9745, 2026-09-22T03:20:00Z) and a `Link` to the successor (`rel="successor-version"`) and to the versioning policy (`rel="deprecation"`). No `Sunset` header is sent because no removal is planned.

Returns a wrapper object for the known response body format(s).

Corresponds with GET /api/v1/whale-trades/{id} (the `GetWhaleTrade` operationId).

Deprecated: this operation has been marked as deprecated upstream, but no `x-deprecated-reason` was set

func (*ClientWithResponses) ListGamesWithResponse added in v0.4.0

func (c *ClientWithResponses) ListGamesWithResponse(ctx context.Context, params *ListGamesParams, reqEditors ...RequestEditorFn) (*ListGamesResponse, error)

ListGamesWithResponse List covered games

One coherent game view per row: both sides with their provider ids and live scores, the UTC kickoff, the provider's own status, the esports series format, and every linked Polymarket market with its condition id and outcome token ids. Built from the same provider-first live and upcoming projections the site's sports boards use, so a request pays no provider fan-out of its own. Ordered by kickoff, then by event_slug; games whose kickoff the provider has not published sort last. coverage names the sports and leagues this deployment serves and any scope whose source was unavailable for the read, so an empty page is never ambiguous. A sport or status outside the published vocabulary returns an empty page rather than a 400. Carries the board's existing competitor-bound provider moneyline price state by default, with an observation clock and explicit incomplete or invalid state. It does not fetch another provider endpoint. Sharp-money splits and holder identities remain on their own gated routes.

Returns a wrapper object for the known response body format(s).

Corresponds with GET /api/v1/games (the `ListGames` operationId).

func (*ClientWithResponses) ListInsiderRadarWithResponse deprecated

func (c *ClientWithResponses) ListInsiderRadarWithResponse(ctx context.Context, params *ListInsiderRadarParams, reqEditors ...RequestEditorFn) (*ListInsiderRadarResponse, error)

ListInsiderRadarWithResponse Get insider radar flags

Deprecated alias of GET /api/v1/suspicious-trades (2026-09-23), kept live with no retirement date; responses carry Deprecation and a Link rel="successor-version" to it. Stored trades whose recorded suspicion score meets the live flag threshold. Evidence contains the scorer's stored signals. Cursor-paginated by suspicion score. mode=live (default) uses fresh cached pages; mode=stable pins pagination to one published scoring generation and returns cursor_expired when scores or filters change.

Returns a wrapper object for the known response body format(s).

Corresponds with GET /api/v1/insider-radar (the `ListInsiderRadar` operationId).

Deprecated: this operation has been marked as deprecated upstream, but no `x-deprecated-reason` was set

func (*ClientWithResponses) ListLargePositionsWithResponse

func (c *ClientWithResponses) ListLargePositionsWithResponse(ctx context.Context, params *ListLargePositionsParams, reqEditors ...RequestEditorFn) (*ListLargePositionsResponse, error)

ListLargePositionsWithResponse List large positions

Returns the largest current open positions from graded traders, value-descending, with opaque cursor pagination. This is a change-detection feed, not a holder list: a row needs a current value of at least 50,000 USD and a live detection in the last 24 hours, so a wallet that holds a market without moving is not listed. For every graded holder of one market use GET /api/v1/market/{condition_id}/holders. Polymarket-only by design: the large-positions scanner filters platform = 'polymarket' (backend/crates/large-positions/src/scanner.rs), so only Polymarket rows are scanned and an unknown condition_id filter returns an empty list (never fabricated rows). The teaser cap that the internal product UI applies to anonymous viewers does not apply here: the API key already proves an active Pro subscription (wire tier `insider`), so authed API callers get full access.

Returns a wrapper object for the known response body format(s).

Corresponds with GET /api/v1/large-positions (the `ListLargePositions` operationId).

func (*ClientWithResponses) ListLargeTradeCounterpartyExecutionsWithResponse added in v0.4.0

func (c *ClientWithResponses) ListLargeTradeCounterpartyExecutionsWithResponse(ctx context.Context, id string, params *ListLargeTradeCounterpartyExecutionsParams, reqEditors ...RequestEditorFn) (*ListLargeTradeCounterpartyExecutionsResponse, error)

ListLargeTradeCounterpartyExecutionsWithResponse Page counterparty executions

Returns a bounded execution page from the immutable snapshot emitted by large-trade detail. A stale or changed snapshot returns a cursor-expired error so clients restart from detail.

Returns a wrapper object for the known response body format(s).

Corresponds with GET /api/v1/large-trades/{id}/counterparties/executions (the `ListLargeTradeCounterpartyExecutions` operationId).

func (*ClientWithResponses) ListLargeTradeCounterpartyMakersWithResponse added in v0.4.0

func (c *ClientWithResponses) ListLargeTradeCounterpartyMakersWithResponse(ctx context.Context, id string, executionId string, params *ListLargeTradeCounterpartyMakersParams, reqEditors ...RequestEditorFn) (*ListLargeTradeCounterpartyMakersResponse, error)

ListLargeTradeCounterpartyMakersWithResponse Page maker counterparties

Returns a bounded maker-wallet page for one exact execution. Percentages keep the complete execution denominator across pages.

Returns a wrapper object for the known response body format(s).

Corresponds with GET /api/v1/large-trades/{id}/counterparties/executions/{execution_id}/makers (the `ListLargeTradeCounterpartyMakers` operationId).

func (*ClientWithResponses) ListLargeTradeHistoryWithResponse added in v0.4.0

func (c *ClientWithResponses) ListLargeTradeHistoryWithResponse(ctx context.Context, params *ListLargeTradeHistoryParams, reqEditors ...RequestEditorFn) (*ListLargeTradeHistoryResponse, error)

ListLargeTradeHistoryWithResponse Replay historical large trades

Returns historical large trades from local whale_alerts rows, not request-time provider fetches. Filter by condition_id, trader, category, minimum grade, persisted suspicion, platform, and RFC3339 from/to windows. All filters are pushed into SQL before LIMIT, every request uses SQL-backed limit + 1 pagination, and results are ordered newest first by traded_at desc, id desc. Metadata exposes local_replay source and best_effort completeness. POINT IN TIME: signal_score, trader.grade and the min_grade filter carry today's values on every row however old, so a backtest that selects by them selects wallets on what they did after the trade. The point-in-time fields are recorded_signal_score (from 2026-08-03T11:59Z; null before, and never backfilled, because the trader statistics it reads at insert were not kept for older rows) and trader.grade_at_trade with trader.grade_at_trade_status (from 2026-09-19T23:00Z; unknown before). CAPTURE RULES changed over the archive's life: rows before 2026-02-02 are sparse (at most a few hundred a month); from 2026-02-02 the floor was 3,000 USD (1.4% of rows through 2026-07-05 are smaller) and trades at any price were kept; from 2026-07-06 a trade is kept at 10,000 USD or more (1,000 USD in earnings markets) and only when priced below 0.97 (0.99 in earnings markets). Pass min_size=10000 for one size rule across the whole range; monthly row counts still follow the sports calendar. Until 2026-07-17 one match could be stored twice, once per wallet: from 2026-05-01 to 2026-07-17, 27.7% of rows at 10,000 USD or more share a transaction and market with another stored wallet, almost always a Yes buyer and a No buyer filled against each other. From 2026-07-18 a row is the taker's side only. Before 2026-05 the transaction hash is mostly absent, so the share cannot be measured there. From 2026-09-23 a fill must ALSO be at least 0.1% of its market's recorded traded volume, Polymarket's own share count, so a $10,000 print that lands in a market which has already traded tens of millions of shares is no longer kept; rows written before that date were not re-filtered. The response adds a top-level `data_quality` object beside `data`, grouping alert, trade, trader, ranking, market, and volume fields by their database writer. `whale_alerts.inserted_xid` is reported as unknown because it is a transaction identifier rather than a timestamp. Its stored clocks are part of the ETag; `meta` continues to hold transport cache facts.

Returns a wrapper object for the known response body format(s).

Corresponds with GET /api/v1/large-trades/history (the `ListLargeTradeHistory` operationId).

func (*ClientWithResponses) ListLargeTradesWithResponse added in v0.4.0

func (c *ClientWithResponses) ListLargeTradesWithResponse(ctx context.Context, params *ListLargeTradesParams, reqEditors ...RequestEditorFn) (*ListLargeTradesResponse, error)

ListLargeTradesWithResponse List large trades

Returns recent large trades with signal scoring and persisted suspicion facts. Filter by size, category, trader grade, or persisted suspicion. Filters are applied before pagination, and every request uses SQL-backed limit + 1 pagination so has_more and next_cursor reflect the filtered result set. Cursor-paginated, newest first. Market categories come from provider-backed market_canonical identity. The response adds a top-level `data_quality` object beside `data`, grouping alert, trade, trader, ranking, market, and volume fields by their database writer. `whale_alerts.inserted_xid` is reported as unknown because it is a transaction identifier rather than a timestamp. Its stored clocks are part of the ETag; `meta` continues to hold transport cache facts. Pass since to poll for new trades: the answer holds only the trades recorded after the one you name, and with If-None-Match a poll that finds none is 304 with an empty body.

Returns a wrapper object for the known response body format(s).

Corresponds with GET /api/v1/large-trades (the `ListLargeTrades` operationId).

func (*ClientWithResponses) ListLeaderboardWithResponse

func (c *ClientWithResponses) ListLeaderboardWithResponse(ctx context.Context, params *ListLeaderboardParams, reqEditors ...RequestEditorFn) (*ListLeaderboardResponse, error)

ListLeaderboardWithResponse Get trader leaderboard

Returns ranked traders (grades S/A/B) sorted by score descending. Supports cursor pagination and optional category/strategy filters.

Returns a wrapper object for the known response body format(s).

Corresponds with GET /api/v1/leaderboard (the `ListLeaderboard` operationId).

func (*ClientWithResponses) ListPositionsWithResponse

func (c *ClientWithResponses) ListPositionsWithResponse(ctx context.Context, params *ListPositionsParams, reqEditors ...RequestEditorFn) (*ListPositionsResponse, error)

ListPositionsWithResponse List current positions (positions-board feed)

Returns the current positions-board feed backed by the wallet_positions mirror. Ordered by current_value_usd DESC with deterministic (wallet, condition_id, outcome_index) tiebreakers. Pre-reconcile rows (current_value_usd IS NULL) are excluded. Cursor-paginated. Every filter pushes into SQL. Deep cursor pages cost the same as the first page: the value bounds and the cursor are index conditions, so a page never rescans the feed from the top. With wallet, the same feed is read for one wallet or a book of up to 25 wallets from each wallet's own ordered index range, so the pages are that wallet's complete reconciled binary open positions and the cost is the page, never the board. min_size defaults to 100 on the board read, so a request with no wallet and no min_size drops positions valued under 100 USD; with wallet it defaults to 0 instead. Send min_size=0 to include every reconciled position. What a wallet read does not return: positions with shares at 0 (closed), rows the reconciler has not valued yet (current_value_usd IS NULL), and non-binary outcomes; per-row last_reconciled_at and freshness say how old each valuation is. Each row also carries additive `exact` source atoms as decimal strings with unit, scale and basis metadata; parse those values with decimal-safe arithmetic and do not reconstruct them from the display-safe numeric fields. The response adds a top-level `data_quality` object beside `data`, with positions, trader, and market groups owned by `wallet_positions.last_reconciled_at|updated_at`, `traders.last_synced`, and `market_canonical.last_refreshed_at`. Its stored clocks are part of the ETag; `meta` continues to hold transport cache facts.

Returns a wrapper object for the known response body format(s).

Corresponds with GET /api/v1/positions (the `ListPositions` operationId).

func (*ClientWithResponses) ListPreGameSideObservationsWithResponse added in v0.4.0

func (c *ClientWithResponses) ListPreGameSideObservationsWithResponse(ctx context.Context, params *ListPreGameSideObservationsParams, reqEditors ...RequestEditorFn) (*ListPreGameSideObservationsResponse, error)

ListPreGameSideObservationsWithResponse List observation-only pre-game side cohorts

Canonical since #16310; GET /api/v1/sports-edge-observations is its deprecated alias and serves the same body. Pro-tier. Measures three explicitly observation-only Polymarket sports cohorts without changing or feeding GET /api/v1/sports/pre-game-sides: wider_holder measures pre-game holder piles outside the funded route's exact raw signals admission, including recent-flow rows rejected by its event, bucket, or total caps; in_play admits provider-confirmed live games and fails closed when the provider live-board snapshot is stale or unavailable or holder/directional evidence is stale or unavailable; emerging_pile is an additive post-compute projection of wider_holder rows with finite sharp_pct in [0.75, 0.85), holder_scan_complete=true, and a kickoff after its pinned projection cutoff. emerging_pile overlaps wider_holder, remains attributed to that source terminal and denominator, and is not holder-arrival history. Every row carries observation_only=true, provider/holder freshness and completeness fields, and the response carries a required snapshot-wide operational/unknown-completeness degraded boolean plus an accountable per-sport funnel over a closed 25-value terminal-reason vocabulary. Omitted or blank category selects all 14 registered observation sport buckets, including Table Tennis and Pickleball; those two remain outside the funded sports projection. All category and all-sports cache scopes share one global observation provider-work admission, so distinct scope keys cannot multiply concurrent provider fanout. One absolute ~25s compute deadline covers cache coordination, board/universe and primary-signals membership reads, holder cache/provider work, price/metadata evaluation, and directional reads, leaving ~5s below the public router timeout for funnel reconciliation, cleanup, and response transport. A shared pre-holder stage deadline jointly bounds those database reads and board reconciliation to the smaller of 12s or half of the absolute budget remaining when that stage starts, preserving holder/post-holder opportunity; board reads use bounded fair waves and cold holder admission gives each represented canonical sport one row before any sport repeats. A request that finds its scope's refresh in flight waits for that snapshot, and a scope refresh waits for another scope's global provider-work admission while at least ~15s of the absolute deadline remain. Absolute deadline exhaustion before a usable cache, provider-work admission still held at that ~15s bound, an in-flight refresh that ends without publishing while another waiting request takes it over, or pre-holder stage expiry before a usable stored universe or primary-signals membership result returns 503 with error.reason=read_model_warming. Category-resolution SQL errors, Redis coordination failures, and primary-signals membership query failures return 500 internal_error instead. With no usable stored universe, a replica-side observation-universe refresh failure (a recovery conflict, its statement timeout, a busy pool, or a replica marked down) returns the same 503 read_model_warming; any other observation-universe SQL error, or an invalid compact result, still returns 500 internal_error. Once a usable universe exists, later operational or unknown-completeness board, holder, or price/metadata failures are retained as explicit terminal reasons in a degraded 200 response with degraded=true: 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 an attempted holder-provider failure, and holder_deadline_unavailable is holder-stage deadline exhaustion. Directional incompleteness is cohort-specific: a wider_holder row remains emitted with terminal wider_holder_emitted and directional_status=unavailable, while an in_play row fails closed with terminal in_play_directional_unavailable. capacity_limited records intentional bounded provider-work admission in the funnel and does not by itself set degraded=true. Healthy wider_holder requests may reuse a snapshot for ~180s; healthy emerging_pile requests may use the same snapshot. in_play never serves a cached observation snapshot older than ~30s, and degraded snapshots use ~30s. The ETag is a weak semantic validator over the stable page payload, including next_cursor page position; request-specific meta excluded; the opaque emerging_pile projection cutoff in next_cursor is not itself a validator input. Rows carry the canonical field names side, backing_score and side_share; the older piled_side, conviction_score and smart_score keys carry the same values and stay on the wire.

Returns a wrapper object for the known response body format(s).

Corresponds with GET /api/v1/sports/pre-game-side-observations (the `ListPreGameSideObservations` operationId).

func (*ClientWithResponses) ListPreGameSidesWithResponse added in v0.4.0

func (c *ClientWithResponses) ListPreGameSidesWithResponse(ctx context.Context, params *ListPreGameSidesParams, reqEditors ...RequestEditorFn) (*ListPreGameSidesResponse, error)

ListPreGameSidesWithResponse List upcoming games ranked by the side profitable wallets hold

Canonical since #16310; GET /api/v1/sports-edge-signals is its deprecated alias and serves the same body. Pro-tier. Ranked list of upcoming pre-game sports markets (moneyline + props) where graded (S/A/B) sharp money is piled on one side, each row carrying signal_created_at (the UTC time its immutable snapshot was computed), the piled side, its grade distribution, kickoff, piled-side Polymarket CLOB token id, and required shadow-only category_skill evidence. signal_created_at is not provider market creation time or request time. Eligibility and ranking remain the funded FLOW/HOLDER contract; category skill cannot change membership, order, rank, cursor, routing, or sizing. meta exposes explicit category source/model/status plus independently computed pre/post SHA-256 base-vector hashes that must match. Served from a shared server-side snapshot cache (healthy TTL ~180s, degraded ~30s) computed once per category at the maximum 48h horizon and filtered at request time; the cursor pins to that snapshot and a stale cursor is rejected. Polymarket only; source coverage is partial first-observed post-launch Goldsky primary taker BUY fills admitted by the canonical whale-alert thresholds, never reconstructed history. Deliberately not the editorial Pick of the Day ranker. Rows carry the canonical field names side, ranked_at, backing_score and side_share; the older piled_side, signal_created_at, conviction_score and smart_score keys carry the same values and stay on the wire.

Returns a wrapper object for the known response body format(s).

Corresponds with GET /api/v1/sports/pre-game-sides (the `ListPreGameSides` operationId).

func (*ClientWithResponses) ListSharpMoneyFlowsWithResponse

func (c *ClientWithResponses) ListSharpMoneyFlowsWithResponse(ctx context.Context, params *ListSharpMoneyFlowsParams, reqEditors ...RequestEditorFn) (*ListSharpMoneyFlowsResponse, error)

ListSharpMoneyFlowsWithResponse List ranked sharp-money flows

Canonical path for ranked sharp-money flows; /api/v1/markets/smart-money-flows remains live as a deprecated byte-identical alias of it. Ranks markets by absolute net S/A/B-grade whale flow over a requested timeframe. Use this discovery endpoint to answer where sharp money is flowing before drilling into a specific market with /api/v1/market/{condition_id}/flow. Pagination is anchored by an opaque cursor carrying the first-page as_of timestamp, normalized effective filters, ranking revision and aggregate collection revision; a changed filter or collection returns `cursor_expired` so callers request the first page again.

Returns a wrapper object for the known response body format(s).

Corresponds with GET /api/v1/markets/sharp-money-flows (the `ListSharpMoneyFlows` operationId).

func (*ClientWithResponses) ListSmartMoneyFlowsWithResponse deprecated

func (c *ClientWithResponses) ListSmartMoneyFlowsWithResponse(ctx context.Context, params *ListSmartMoneyFlowsParams, reqEditors ...RequestEditorFn) (*ListSmartMoneyFlowsResponse, error)

ListSmartMoneyFlowsWithResponse List ranked sharp-money flows (deprecated alias)

Ranks markets by absolute net S/A/B-grade whale flow over a requested timeframe. Use this discovery endpoint to answer where sharp money is flowing before drilling into a specific market with /api/v1/market/{condition_id}/flow. Pagination is anchored by an opaque cursor carrying the first-page as_of timestamp, normalized effective filters, ranking revision and aggregate collection revision; a changed filter or collection returns `cursor_expired` so callers request the first page again. Deprecated alias of GET /api/v1/markets/sharp-money-flows, kept live and never removed; every response carries `Deprecation: @1783276950` (RFC 9745, 2026-07-05T18:42:30Z) and a `Link` to the successor (`rel="successor-version"`) and to the versioning policy (`rel="deprecation"`). No `Sunset` header is sent because no removal is planned.

Returns a wrapper object for the known response body format(s).

Corresponds with GET /api/v1/markets/smart-money-flows (the `ListSmartMoneyFlows` operationId).

Deprecated: this operation has been marked as deprecated upstream, but no `x-deprecated-reason` was set

func (*ClientWithResponses) ListSportsEdgeObservationsWithResponse deprecated

func (c *ClientWithResponses) ListSportsEdgeObservationsWithResponse(ctx context.Context, params *ListSportsEdgeObservationsParams, reqEditors ...RequestEditorFn) (*ListSportsEdgeObservationsResponse, error)

ListSportsEdgeObservationsWithResponse List observation-only sports-edge cohorts

Deprecated since #16310: use GET /api/v1/sports/pre-game-side-observations, which serves the same body. This path stays live and answers with Deprecation and successor Link headers. Pro-tier. Measures three explicitly observation-only Polymarket sports cohorts without changing or feeding GET /api/v1/sports-edge-signals: wider_holder measures pre-game holder piles outside the funded route's exact raw signals admission, including recent-flow rows rejected by its event, bucket, or total caps; in_play admits provider-confirmed live games and fails closed when the provider live-board snapshot is stale or unavailable or holder/directional evidence is stale or unavailable; emerging_pile is an additive post-compute projection of wider_holder rows with finite sharp_pct in [0.75, 0.85), holder_scan_complete=true, and a kickoff after its pinned projection cutoff. emerging_pile overlaps wider_holder, remains attributed to that source terminal and denominator, and is not holder-arrival history. Every row carries observation_only=true, provider/holder freshness and completeness fields, and the response carries a required snapshot-wide operational/unknown-completeness degraded boolean plus an accountable per-sport funnel over a closed 25-value terminal-reason vocabulary. Omitted or blank category selects all 14 registered observation sport buckets, including Table Tennis and Pickleball; those two remain outside the funded sports projection. All category and all-sports cache scopes share one global observation provider-work admission, so distinct scope keys cannot multiply concurrent provider fanout. One absolute ~25s compute deadline covers cache coordination, board/universe and primary-signals membership reads, holder cache/provider work, price/metadata evaluation, and directional reads, leaving ~5s below the public router timeout for funnel reconciliation, cleanup, and response transport. A shared pre-holder stage deadline jointly bounds those database reads and board reconciliation to the smaller of 12s or half of the absolute budget remaining when that stage starts, preserving holder/post-holder opportunity; board reads use bounded fair waves and cold holder admission gives each represented canonical sport one row before any sport repeats. A request that finds its scope's refresh in flight waits for that snapshot, and a scope refresh waits for another scope's global provider-work admission while at least ~15s of the absolute deadline remain. Absolute deadline exhaustion before a usable cache, provider-work admission still held at that ~15s bound, an in-flight refresh that ends without publishing while another waiting request takes it over, or pre-holder stage expiry before a usable stored universe or primary-signals membership result returns 503 with error.reason=read_model_warming. Category-resolution SQL errors, Redis coordination failures, and primary-signals membership query failures return 500 internal_error instead. With no usable stored universe, a replica-side observation-universe refresh failure (a recovery conflict, its statement timeout, a busy pool, or a replica marked down) returns the same 503 read_model_warming; any other observation-universe SQL error, or an invalid compact result, still returns 500 internal_error. Once a usable universe exists, later operational or unknown-completeness board, holder, or price/metadata failures are retained as explicit terminal reasons in a degraded 200 response with degraded=true: 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 an attempted holder-provider failure, and holder_deadline_unavailable is holder-stage deadline exhaustion. Directional incompleteness is cohort-specific: a wider_holder row remains emitted with terminal wider_holder_emitted and directional_status=unavailable, while an in_play row fails closed with terminal in_play_directional_unavailable. capacity_limited records intentional bounded provider-work admission in the funnel and does not by itself set degraded=true. Healthy wider_holder requests may reuse a snapshot for ~180s; healthy emerging_pile requests may use the same snapshot. in_play never serves a cached observation snapshot older than ~30s, and degraded snapshots use ~30s. The ETag is a weak semantic validator over the stable page payload, including next_cursor page position; request-specific meta excluded; the opaque emerging_pile projection cutoff in next_cursor is not itself a validator input.

Returns a wrapper object for the known response body format(s).

Corresponds with GET /api/v1/sports-edge-observations (the `ListSportsEdgeObservations` operationId).

Deprecated: this operation has been marked as deprecated upstream, but no `x-deprecated-reason` was set

func (*ClientWithResponses) ListSportsEdgeSignalsWithResponse deprecated

func (c *ClientWithResponses) ListSportsEdgeSignalsWithResponse(ctx context.Context, params *ListSportsEdgeSignalsParams, reqEditors ...RequestEditorFn) (*ListSportsEdgeSignalsResponse, error)

ListSportsEdgeSignalsWithResponse List ranked pre-game sports-edge signals

Deprecated since #16310: use GET /api/v1/sports/pre-game-sides, which serves the same body. This path stays live and answers with Deprecation and successor Link headers. Pro-tier. Ranked list of upcoming pre-game sports markets (moneyline + props) where graded (S/A/B) sharp money is piled on one side, each row carrying signal_created_at (the UTC time its immutable snapshot was computed), the piled side, its grade distribution, kickoff, piled-side Polymarket CLOB token id, and required shadow-only category_skill evidence. signal_created_at is not provider market creation time or request time. Eligibility and ranking remain the funded FLOW/HOLDER contract; category skill cannot change membership, order, rank, cursor, routing, or sizing. meta exposes explicit category source/model/status plus independently computed pre/post SHA-256 base-vector hashes that must match. Served from a shared server-side snapshot cache (healthy TTL ~180s, degraded ~30s) computed once per category at the maximum 48h horizon and filtered at request time; the cursor pins to that snapshot and a stale cursor is rejected. Polymarket only; source coverage is partial first-observed post-launch Goldsky primary taker BUY fills admitted by the canonical whale-alert thresholds, never reconstructed history. Deliberately not the editorial Pick of the Day ranker.

Returns a wrapper object for the known response body format(s).

Corresponds with GET /api/v1/sports-edge-signals (the `ListSportsEdgeSignals` operationId).

Deprecated: this operation has been marked as deprecated upstream, but no `x-deprecated-reason` was set

func (*ClientWithResponses) ListSuspiciousTradesWithResponse added in v0.4.0

func (c *ClientWithResponses) ListSuspiciousTradesWithResponse(ctx context.Context, params *ListSuspiciousTradesParams, reqEditors ...RequestEditorFn) (*ListSuspiciousTradesResponse, error)

ListSuspiciousTradesWithResponse Get suspicious trades

Stored trades whose recorded suspicion score meets the live flag threshold. Evidence contains the scorer's stored signals. Cursor-paginated by suspicion score. mode=live (default) uses fresh cached pages; mode=stable pins pagination to one published scoring generation and returns cursor_expired when scores or filters change. Canonical since 2026-09-23; GET /api/v1/insider-radar is its deprecated alias.

Returns a wrapper object for the known response body format(s).

Corresponds with GET /api/v1/suspicious-trades (the `ListSuspiciousTrades` operationId).

func (*ClientWithResponses) ListTrendingWalletsWithResponse

func (c *ClientWithResponses) ListTrendingWalletsWithResponse(ctx context.Context, params *ListTrendingWalletsParams, reqEditors ...RequestEditorFn) (*ListTrendingWalletsResponse, error)

ListTrendingWalletsWithResponse List trending wallets

Returns wallets ranked by Polymarket weekly/monthly P&L (Polymarket-only discovery), with opaque page-cursor pagination. trending_pnl_usd and the by-PNL row order come from Polymarket's canonical leaderboard (data-api.polymarket.com/v2/leaderboard?time_period=week|month&sort_by=PNL), not a locally summed realized-leaf total. Each row also carries window volume, distinct markets, grade, hot-streak tier, and a shape-only daily P&L sparkline derived from the Polymarket user-pnl cumulative curve (per-day deltas; not guaranteed to sum to trending_pnl_usd). The response comes from a retained Redis board: meta.cached is true, and meta.cache_age_s reports the original board age when known (omitted when unknown). A backend read of a board at least 120 seconds old attempts a detached refresh; after a quiet spell a product board may be up to a day old. HTTP freshness ends at 120 seconds; max-age plus stale-while-revalidate cannot exceed the remaining original retention. Unknown age grants no cache window. A true cold read returns 503 (warming, retry-after), never a fabricated ranking. Polymarket-only: the read model filters platform = 'polymarket'. Cursors are bound to the effective limit, window and ranked-board generation; a changed board or request scope returns 400 with error.reason=cursor_expired, and legacy page-only cursors must restart from page one.

Returns a wrapper object for the known response body format(s).

Corresponds with GET /api/v1/leaderboard/trending (the `ListTrendingWallets` operationId).

func (*ClientWithResponses) ListWebhookDeliveriesWithResponse

func (c *ClientWithResponses) ListWebhookDeliveriesWithResponse(ctx context.Context, id int64, params *ListWebhookDeliveriesParams, reqEditors ...RequestEditorFn) (*ListWebhookDeliveriesResponse, error)

ListWebhookDeliveriesWithResponse List webhook delivery log

Recent delivery attempts for one webhook destination owned by the authenticated API key user, newest first, with opaque cursor pagination. Returns 404 (identical to an unknown id) when the endpoint is not owned by the caller, so a non-owner cannot tell an owned-but-empty log apart from someone else's endpoint. Delivery rows omit the request body and signing secret. next_attempt_at is when a pending or retry delivery is next attempted; retry_schedule_reason says whether the queue is following receiver_retry_after, transient_failure, permanent_or_auth_failure, manual_redelivery, or configuration_changed; both are null while an attempt is in flight and once the delivery is delivered or dead_letter. A delivery keeps the existing eight-attempt budget, endpoint failure budget, fairness limits, and ordinary 7380-second upper-bound schedule; see POST /api/v1/webhooks for the bounded Retry-After policy. Resend a dead_letter delivery with POST /api/v1/webhooks/{id}/deliveries/{delivery_id}/redeliver.

Returns a wrapper object for the known response body format(s).

Corresponds with GET /api/v1/webhooks/{id}/deliveries (the `ListWebhookDeliveries` operationId).

func (*ClientWithResponses) ListWebhookEventsWithResponse

func (c *ClientWithResponses) ListWebhookEventsWithResponse(ctx context.Context, params *ListWebhookEventsParams, reqEditors ...RequestEditorFn) (*ListWebhookEventsResponse, error)

ListWebhookEventsWithResponse List webhook event catalog

Self-describing catalog of every webhook event type: its description, data payload shape, and whether it is active (has a firing producer) or dormant (subscribable but not yet delivered; no event type is dormant today). The catalog is identical for every authenticated key and exposes no owner-scoped data. 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) appear in the catalog but 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 and download routes.

Returns a wrapper object for the known response body format(s).

Corresponds with GET /api/v1/webhooks/events (the `ListWebhookEvents` operationId).

func (*ClientWithResponses) ListWebhooksWithResponse

func (c *ClientWithResponses) ListWebhooksWithResponse(ctx context.Context, params *ListWebhooksParams, reqEditors ...RequestEditorFn) (*ListWebhooksResponse, error)

ListWebhooksWithResponse List builder webhook destinations

Returns webhook destinations owned by the authenticated API key user. Deleted endpoints are omitted; an endpoint paused with PATCH or disabled after consecutive failures is listed with status disabled. Subscribable event_types and their payload shapes are described by GET /api/v1/webhooks/events. Export lifecycle event types (export_job_ready, export_job_failed, export_job_expired, export_job_cancelled) are delivered only to the API-key account that created the export and contain no download URL; use the authorized export status and download routes. Four subscribable event types are Pro-only and only deliver to API keys on an active Pro subscription. whale_trades_inserted is one of them, gated by the same SubscriberScope::InsiderOnly mechanism as the other three (each type carries its own LiveEventContract entry; they share the scope value). The other three: wallet_grade_changed (data: wallet, trader_id, old_grade, new_grade, direction (upgrade|downgrade), skill_index, final_score, date) fires on a Pass-2 grade transition; insider_radar_flag_raised (data: trade_id, wallet, trader_id, condition_id, suspicion_score, track, side (yes|no), size, price) fires the first time a trade's suspicion score crosses the radar flag threshold; sharp_money_flow_detected (data: condition_id, net_flow_usd, abs_net_flow_usd, dominant_side (yes|no), grade_floor (S|A|B|C|D|F), whale_trade_count, window) fires when a scheduled scanner detects ranked-trader net flow crossing a threshold (up or down) on a market, and smart_money_flow_detected is its deprecated spelling of the same event. live_sports_updated (data: event_slug, game_id, league, version, changed, observed_at, published_at, status, period, clock, live, ended, scores, series_format, snapshot_url) is ungated and fires as a bounded per-game pulse when a live game's scores, status, period or live/ended state moves: at most one delivery per game per 20 seconds, with a live or ended transition exempt from that interval, and the game clock alone never firing one. version is a durable per-game ordinal, changed lists the material fields that moved since that game's previous delivered pulse, and snapshot_url is where to re-read the whole game after a gap.

Returns a wrapper object for the known response body format(s).

Corresponds with GET /api/v1/webhooks (the `ListWebhooks` operationId).

func (*ClientWithResponses) ListWhaleTradeCounterpartyExecutionsWithResponse deprecated

func (c *ClientWithResponses) ListWhaleTradeCounterpartyExecutionsWithResponse(ctx context.Context, id string, params *ListWhaleTradeCounterpartyExecutionsParams, reqEditors ...RequestEditorFn) (*ListWhaleTradeCounterpartyExecutionsResponse, error)

ListWhaleTradeCounterpartyExecutionsWithResponse Page counterparty executions

Returns a bounded execution page from the immutable snapshot emitted by whale-trade detail. A stale or changed snapshot returns a cursor-expired error so clients restart from detail. Deprecated alias of GET /api/v1/large-trades/{id}/counterparties/executions, kept live and never removed (#16304); every response carries `Deprecation: @1790047200` (RFC 9745, 2026-09-22T03:20:00Z) and a `Link` to the successor (`rel="successor-version"`) and to the versioning policy (`rel="deprecation"`). No `Sunset` header is sent because no removal is planned.

Returns a wrapper object for the known response body format(s).

Corresponds with GET /api/v1/whale-trades/{id}/counterparties/executions (the `ListWhaleTradeCounterpartyExecutions` operationId).

Deprecated: this operation has been marked as deprecated upstream, but no `x-deprecated-reason` was set

func (*ClientWithResponses) ListWhaleTradeCounterpartyMakersWithResponse deprecated

func (c *ClientWithResponses) ListWhaleTradeCounterpartyMakersWithResponse(ctx context.Context, id string, executionId string, params *ListWhaleTradeCounterpartyMakersParams, reqEditors ...RequestEditorFn) (*ListWhaleTradeCounterpartyMakersResponse, error)

ListWhaleTradeCounterpartyMakersWithResponse Page maker counterparties

Returns a bounded maker-wallet page for one exact execution. Percentages keep the complete execution denominator across pages. Deprecated alias of GET /api/v1/large-trades/{id}/counterparties/executions/{execution_id}/makers, kept live and never removed (#16304); every response carries `Deprecation: @1790047200` (RFC 9745, 2026-09-22T03:20:00Z) and a `Link` to the successor (`rel="successor-version"`) and to the versioning policy (`rel="deprecation"`). No `Sunset` header is sent because no removal is planned.

Returns a wrapper object for the known response body format(s).

Corresponds with GET /api/v1/whale-trades/{id}/counterparties/executions/{execution_id}/makers (the `ListWhaleTradeCounterpartyMakers` operationId).

Deprecated: this operation has been marked as deprecated upstream, but no `x-deprecated-reason` was set

func (*ClientWithResponses) ListWhaleTradeHistoryWithResponse deprecated

func (c *ClientWithResponses) ListWhaleTradeHistoryWithResponse(ctx context.Context, params *ListWhaleTradeHistoryParams, reqEditors ...RequestEditorFn) (*ListWhaleTradeHistoryResponse, error)

ListWhaleTradeHistoryWithResponse Replay historical whale trades

Returns historical whale trades from local whale_alerts rows, not request-time provider fetches. Filter by condition_id, trader, category, minimum grade, persisted suspicion, platform, and RFC3339 from/to windows. All filters are pushed into SQL before LIMIT, every request uses SQL-backed limit + 1 pagination, and results are ordered newest first by traded_at desc, id desc. Metadata exposes local_replay source and best_effort completeness. Deprecated alias of GET /api/v1/large-trades/history, kept live and never removed (#16304); every response carries `Deprecation: @1790047200` (RFC 9745, 2026-09-22T03:20:00Z) and a `Link` to the successor (`rel="successor-version"`) and to the versioning policy (`rel="deprecation"`). No `Sunset` header is sent because no removal is planned. The response adds a top-level `data_quality` object beside `data`, grouping alert, trade, trader, ranking, market, and volume fields by their database writer. `whale_alerts.inserted_xid` is reported as unknown because it is a transaction identifier rather than a timestamp. Its stored clocks are part of the ETag; `meta` continues to hold transport cache facts.

Returns a wrapper object for the known response body format(s).

Corresponds with GET /api/v1/whale-trades/history (the `ListWhaleTradeHistory` operationId).

Deprecated: this operation has been marked as deprecated upstream, but no `x-deprecated-reason` was set

func (*ClientWithResponses) ListWhaleTradesWithResponse deprecated

func (c *ClientWithResponses) ListWhaleTradesWithResponse(ctx context.Context, params *ListWhaleTradesParams, reqEditors ...RequestEditorFn) (*ListWhaleTradesResponse, error)

ListWhaleTradesWithResponse List whale trades

Returns recent large trades with signal scoring and persisted suspicion facts. Filter by size, category, trader grade, or persisted suspicion. Filters are applied before pagination, and every request uses SQL-backed limit + 1 pagination so has_more and next_cursor reflect the filtered result set. Cursor-paginated, newest first. Market categories come from provider-backed market_canonical identity. Deprecated alias of GET /api/v1/large-trades, kept live and never removed (#16304); every response carries `Deprecation: @1790047200` (RFC 9745, 2026-09-22T03:20:00Z) and a `Link` to the successor (`rel="successor-version"`) and to the versioning policy (`rel="deprecation"`). No `Sunset` header is sent because no removal is planned. The response adds a top-level `data_quality` object beside `data`, grouping alert, trade, trader, ranking, market, and volume fields by their database writer. `whale_alerts.inserted_xid` is reported as unknown because it is a transaction identifier rather than a timestamp. Its stored clocks are part of the ETag; `meta` continues to hold transport cache facts. Pass since to poll for new trades: the answer holds only the trades recorded after the one you name, and with If-None-Match a poll that finds none is 304 with an empty body.

Returns a wrapper object for the known response body format(s).

Corresponds with GET /api/v1/whale-trades (the `ListWhaleTrades` operationId).

Deprecated: this operation has been marked as deprecated upstream, but no `x-deprecated-reason` was set

func (*ClientWithResponses) OpenMcpEventStreamWithResponse

func (c *ClientWithResponses) OpenMcpEventStreamWithResponse(ctx context.Context, params *OpenMcpEventStreamParams, reqEditors ...RequestEditorFn) (*OpenMcpEventStreamResponse, error)

OpenMcpEventStreamWithResponse MCP GET: no server-to-client stream (405)

The MCP Streamable HTTP transport lets a client GET the endpoint to open a server-to-client text/event-stream, and lets the server answer 405 Method Not Allowed when it offers no such stream. This server sends no notifications, so an authenticated GET answers 405 with Allow: POST, a JSON-RPC error body (code -32004) and X-Mcp-Error-Code: -32004; a conforming client (the reference @modelcontextprotocol/sdk included) reads the 405 as no stream here and does not retry. Without a credential the GET answers 401 with the WWW-Authenticate challenge naming /.well-known/oauth-protected-resource/api/v1/mcp, which is where a client that has only run the public handshake learns to start the OAuth flow. Until 2026-09-22 an authenticated GET answered 200 text/event-stream and closed the body at once, which conforming clients reconnected to every second. Every JSON-RPC request goes over POST.

Returns a wrapper object for the known response body format(s).

Corresponds with GET /api/v1/mcp (the `OpenMcpEventStream` operationId).

func (*ClientWithResponses) OpenStream added in v0.2.0

func (c *ClientWithResponses) OpenStream(ctx context.Context, params *GetStreamParams, opts ...StreamOption) (*StreamReader, error)

OpenStream opens GET /api/v1/stream and returns a reader that delivers frames as they arrive. The request carries the client's editors (WithBearerToken, the User-Agent) and Accept: text/event-stream. Cancel ctx to close the connection; Next then returns ctx.Err(). A non-200 answer is a *StreamHTTPError; a 200 that is not text/event-stream is a *StreamProtocolError with StreamUnexpectedMediaType. Close the reader when you are done with it.

The stream carries no total deadline: it is meant to stay open. It is bounded where it can stall instead. Opening it is bounded by WithStreamStartTimeout, and silence on it by WithStreamIdleTimeout; either one ends the call with a *StreamTimeoutError, which names the phase and, for an idle timeout, the sequence to resume from.

reader, err := client.OpenStream(ctx, &oxinsider.GetStreamParams{LastEventID: &cursor})
if err != nil { ... }
defer reader.Close()
for {
	frame, err := reader.Next()
	if errors.Is(err, io.EOF) { break } // the server closed the stream
	if err != nil { ... }               // *StreamProtocolError, ctx.Err(), or a transport error
	if frame.Resync { refetch(); continue }
	cursor = strconv.FormatInt(frame.Seq, 10)
}

func (*ClientWithResponses) PrepareWebhookSecretWithResponse added in v0.3.0

func (c *ClientWithResponses) PrepareWebhookSecretWithResponse(ctx context.Context, id int64, params *PrepareWebhookSecretParams, reqEditors ...RequestEditorFn) (*PrepareWebhookSecretResponse, error)

PrepareWebhookSecretWithResponse Prepare a staged builder webhook signing secret

Creates a pending signing secret while the current secret remains active. Deploy the returned one-time signing_secret to the receiver before calling activate. The response exposes secret_rotation.status=pending; an existing pending secret is returned again so a lost response can be recovered safely.

Returns a wrapper object for the known response body format(s).

Corresponds with POST /api/v1/webhooks/{id}/rotate-secret/prepare (the `PrepareWebhookSecret` operationId).

func (*ClientWithResponses) RedeliverWebhookDeliveryWithResponse added in v0.2.0

func (c *ClientWithResponses) RedeliverWebhookDeliveryWithResponse(ctx context.Context, id int64, deliveryId int64, params *RedeliverWebhookDeliveryParams, reqEditors ...RequestEditorFn) (*RedeliverWebhookDeliveryResponse, error)

RedeliverWebhookDeliveryWithResponse Redeliver a dead-lettered webhook delivery

Returns one dead_letter delivery to the delivery queue with a fresh attempt budget: status becomes pending, attempt_count resets to 0, and next_attempt_at is now, so the delivery worker claims it like any queued delivery, under the same per-owner and per-origin concurrency limits. Use it after a failed delivery exhausts its retries, or after re-enabling an endpoint whose queued deliveries were dead-lettered when it was disabled: PATCH /api/v1/webhooks/{id} {"enabled": true} resends nothing by itself. The resend is signed with the endpoint's current signing secret and sent to its current URL, and keeps the delivery's event_id and idempotency-key header, so a receiver that already processed the event can deduplicate it; x-0xinsider-delivery-attempt starts again at 1. last_response_status and last_error keep the previous failure until the next attempt records its own. Returns 409 when the delivery is already delivered or still queued (pending, retry, or processing), or when the endpoint would not receive it (disabled, not verified, or no longer subscribed to the delivery's event_type); error.message names the step that lets the same request succeed. Returns 404 for an endpoint or delivery the caller does not own, including a delivery removed by the seven-day retention of delivered and dead_letter history.

Returns a wrapper object for the known response body format(s).

Corresponds with POST /api/v1/webhooks/{id}/deliveries/{delivery_id}/redeliver (the `RedeliverWebhookDelivery` operationId).

func (*ClientWithResponses) RedirectApiOpenapiSpecWithResponse

func (c *ClientWithResponses) RedirectApiOpenapiSpecWithResponse(ctx context.Context, params *RedirectApiOpenapiSpecParams, reqEditors ...RequestEditorFn) (*RedirectApiOpenapiSpecResponse, error)

RedirectApiOpenapiSpecWithResponse Redirect to the canonical OpenAPI spec

Unauthenticated API-origin compatibility redirect to the canonical web-origin OpenAPI JSON document at https://0xinsider.com/api/v1/openapi.json.

Returns a wrapper object for the known response body format(s).

Corresponds with GET /api/v1/openapi.json (the `RedirectApiOpenapiSpec` operationId).

func (*ClientWithResponses) RegisterAgentWithResponse added in v0.2.0

func (c *ClientWithResponses) RegisterAgentWithResponse(ctx context.Context, params *RegisterAgentParams, reqEditors ...RequestEditorFn) (*RegisterAgentResponse, error)

RegisterAgentWithResponse Register an agent for a sandbox key

Self-serve agent onboarding: no account, no request body, no human step. Returns a sandbox API key (oxi_sk_test_...) and the path to live access. The key works only on the sandbox server (https://0xinsider.com/sandbox/api/v1), where it is optional: send it as Authorization: Bearer to exercise the credential path, and the sandbox answers a malformed key with the production 401. Nothing is stored, so the key cannot be listed or revoked and does not expire; register again for a new one. The live API answers a sandbox key with 401 invalid_api_key and error.reason sandbox_api_key. Live data needs an account with an active Pro subscription, and either an oxi_sk_live_ key from https://0xinsider.com/developers or an OAuth access token (https://0xinsider.com/auth.md). The request body is not read.

Returns a wrapper object for the known response body format(s).

Corresponds with POST /api/v1/agents/register (the `RegisterAgent` operationId).

func (*ClientWithResponses) RetireWebhookSecretWithResponse added in v0.3.0

func (c *ClientWithResponses) RetireWebhookSecretWithResponse(ctx context.Context, id int64, params *RetireWebhookSecretParams, reqEditors ...RequestEditorFn) (*RetireWebhookSecretResponse, error)

RetireWebhookSecretWithResponse Retire the previous builder webhook signing secret

Ends the one-hour dual-signature overlap and removes the previous signing secret from future delivery authorization. Call this after the receiver accepts the activated secret. The operation is idempotent and does not return signing_secret.

Returns a wrapper object for the known response body format(s).

Corresponds with POST /api/v1/webhooks/{id}/rotate-secret/retire (the `RetireWebhookSecret` operationId).

func (*ClientWithResponses) RotateWebhookSecretWithResponse

func (c *ClientWithResponses) RotateWebhookSecretWithResponse(ctx context.Context, id int64, params *RotateWebhookSecretParams, reqEditors ...RequestEditorFn) (*RotateWebhookSecretResponse, error)

RotateWebhookSecretWithResponse Rotate a builder webhook signing secret

Rotates the endpoint signing secret and returns the new signing_secret once in the response. Returns 409 with error.reason=webhook_delivery_in_progress while a live delivery freezes the current signing nonce; retry after it completes.

Returns a wrapper object for the known response body format(s).

Corresponds with POST /api/v1/webhooks/{id}/rotate-secret (the `RotateWebhookSecret` operationId).

func (*ClientWithResponses) SearchContentWithResponse

func (c *ClientWithResponses) SearchContentWithResponse(ctx context.Context, params *SearchContentParams, reqEditors ...RequestEditorFn) (*SearchContentResponse, error)

SearchContentWithResponse Search editorial content

Search 0xinsider editorial content by keyword. Returns backend-owned learn, glossary, comparison, research, and trading-strategy items with canonical URLs. Opaque ranking scores are not exposed.

Returns a wrapper object for the known response body format(s).

Corresponds with GET /api/v1/content/search (the `SearchContent` operationId).

func (*ClientWithResponses) SearchMarketsWithResponse

func (c *ClientWithResponses) SearchMarketsWithResponse(ctx context.Context, params *SearchMarketsParams, reqEditors ...RequestEditorFn) (*SearchMarketsResponse, error)

SearchMarketsWithResponse Search markets

Search prediction markets by keyword. Returns representative market matches with status, category, and platform metadata. Cursor pagination advances over grouped market results rather than raw sub-market rows.

Returns a wrapper object for the known response body format(s).

Corresponds with GET /api/v1/markets/search (the `SearchMarkets` operationId).

func (*ClientWithResponses) SubmitTraderExportWithResponse

func (c *ClientWithResponses) SubmitTraderExportWithResponse(ctx context.Context, address string, params *SubmitTraderExportParams, reqEditors ...RequestEditorFn) (*SubmitTraderExportResponse, error)

SubmitTraderExportWithResponse Submit a trader dataset export job

Queues an async export of the trader's full dataset in the requested format (json default, ndjson, or csv) and returns the job resource. Poll the status route at poll_after_s until terminal is true, then follow the download route while status is 'ready' (until expires_at, 24 hours from submit). Reuse: without fresh=true, a live job for the same trader and format inside its retention window (queued, running, reconcile_required or ready) is returned with 200 instead of a new one, except a job its owner asked to cancel, which is never reused; its data_as_of says what its file is a snapshot of. With fresh=true only a queued job (which has not started reading) is reused; a running, reconciling or ready job is left alone and a new job is reserved, which consumes quota like any new job. Both decisions run under one per-account lock, so two concurrent submits cannot both reserve when one would have reused the other. Quotas are the per-user daily and per-address hourly export caps, keyed on the API key owner so an API key never widens its owner's quota. New full exports select one database read generation before delivery. JSON and NDJSON add export_metadata.generation (id, selected_at, consistency=repeatable_read, source_watermarks for positions, native P&L, categories and all matching trades), position_generation, provider_observations (provider values and observation/revision metadata), category_data_as_of, pnl_date_from/to, pnl_rows, pnl_row_limit (3650), markets_rows, markets_row_limit (50000), summary_basis and trades_basis. Summary counts cover all stored markets; the markets section retains its existing latest-activity 50000-row limit and P&L its earliest-3650-days limit. These are database consistency and section coverage facts, not a claim that providers observed every section simultaneously. CSV appends export_generation, export_selected_at and export_consistency columns. Downloaded objects also expose x-amz-meta-export-generation, x-amz-meta-export-selected-at, x-amz-meta-export-consistency, x-amz-meta-export-trades and x-amz-meta-export-provenance headers, including empty CSV files. Historical artifacts remain unchanged. Select CSV columns by name; JSON/NDJSON readers may ignore the additive fields. A read exceeding 600 seconds or an uncompressed artifact exceeding 2 GiB fails without publishing a partial file.

Returns a wrapper object for the known response body format(s).

Corresponds with POST /api/v1/trader/{address}/export (the `SubmitTraderExport` operationId).

func (*ClientWithResponses) SubmitWhaleDatasetWithBodyWithResponse added in v0.4.0

func (c *ClientWithResponses) SubmitWhaleDatasetWithBodyWithResponse(ctx context.Context, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*SubmitWhaleDatasetResponse, error)

SubmitWhaleDatasetWithBodyWithResponse Create an immutable whale dataset

Extract at most 1,000,000 rows and 256 MiB uncompressed; exceeding either bound fails the job and publishes no partial file. Window and filters freeze on admission; rows and source facts freeze on one worker database snapshot. NDJSON uses exact decimal strings, with no current grade or market enrichment. The manifest checkpoint includes already committed arrivals after to plus later/open writers, with intentional overlap. Paid export scope; jobs are private to the credential owner. Shares the 20/day owner export quota and fair worker admission with trader exports; datasets also have a combined 5/hour quota. Three worker attempts, 24-hour retention, no partial download; cancellation consumes its reservation. Coverage is whale alerts, not all provider fills.

Takes any type of body and a specified content type, and returns a wrapper object for the known response body format(s).

Corresponds with POST /api/v1/datasets/whale-trades (the `SubmitWhaleDataset` operationId).

func (*ClientWithResponses) SubmitWhaleDatasetWithResponse added in v0.4.0

func (c *ClientWithResponses) SubmitWhaleDatasetWithResponse(ctx context.Context, body SubmitWhaleDatasetJSONRequestBody, reqEditors ...RequestEditorFn) (*SubmitWhaleDatasetResponse, error)

SubmitWhaleDatasetWithResponse Create an immutable whale dataset

Extract at most 1,000,000 rows and 256 MiB uncompressed; exceeding either bound fails the job and publishes no partial file. Window and filters freeze on admission; rows and source facts freeze on one worker database snapshot. NDJSON uses exact decimal strings, with no current grade or market enrichment. The manifest checkpoint includes already committed arrivals after to plus later/open writers, with intentional overlap. Paid export scope; jobs are private to the credential owner. Shares the 20/day owner export quota and fair worker admission with trader exports; datasets also have a combined 5/hour quota. Three worker attempts, 24-hour retention, no partial download; cancellation consumes its reservation. Coverage is whale alerts, not all provider fills.

Takes a body of the `application/json` content type, and returns a wrapper object for the known response body format(s).

Corresponds with POST /api/v1/datasets/whale-trades (the `SubmitWhaleDataset` operationId).

func (*ClientWithResponses) UpdateWebhookWithBodyWithResponse

func (c *ClientWithResponses) UpdateWebhookWithBodyWithResponse(ctx context.Context, id int64, params *UpdateWebhookParams, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*UpdateWebhookResponse, error)

UpdateWebhookWithBodyWithResponse Update a builder webhook destination

Updates name, HTTPS URL, event types, or enabled state. URL changes force pending_verification and return a new verification token; the new destination must answer 2xx to the signed webhook.verification challenge before deliveries resume. A URL change returns 409 with error.reason=webhook_delivery_in_progress while this destination has an active delivery; retry the same mutation after that request completes.

Takes any type of body and a specified content type, and returns a wrapper object for the known response body format(s).

Corresponds with PATCH /api/v1/webhooks/{id} (the `UpdateWebhook` operationId).

func (*ClientWithResponses) UpdateWebhookWithResponse

func (c *ClientWithResponses) UpdateWebhookWithResponse(ctx context.Context, id int64, params *UpdateWebhookParams, body UpdateWebhookJSONRequestBody, reqEditors ...RequestEditorFn) (*UpdateWebhookResponse, error)

UpdateWebhookWithResponse Update a builder webhook destination

Updates name, HTTPS URL, event types, or enabled state. URL changes force pending_verification and return a new verification token; the new destination must answer 2xx to the signed webhook.verification challenge before deliveries resume. A URL change returns 409 with error.reason=webhook_delivery_in_progress while this destination has an active delivery; retry the same mutation after that request completes.

Takes a body of the `application/json` content type, and returns a wrapper object for the known response body format(s).

Corresponds with PATCH /api/v1/webhooks/{id} (the `UpdateWebhook` operationId).

func (*ClientWithResponses) VerifyWebhookWithBodyWithResponse

func (c *ClientWithResponses) VerifyWebhookWithBodyWithResponse(ctx context.Context, id int64, params *VerifyWebhookParams, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*VerifyWebhookResponse, error)

VerifyWebhookWithBodyWithResponse Verify a builder webhook destination

Activates a pending webhook destination. Two conditions must both hold: the one-time verification token matches and has not expired, AND the destination answers 2xx to a signed challenge this operation POSTs to the endpoint's stored url. The challenge body is {"type":"webhook.verification","token":"<verification_token>","webhook_id":<id>}. It carries x-0xinsider-event-type: webhook.verification plus the same x-0xinsider-timestamp and x-0xinsider-signature headers a delivery carries, signed with that endpoint's signing_secret, so verify it exactly as you verify a delivery. Answer any 2xx within 10 seconds; the challenge response body is never read, and the challenge follows no redirects. A status outside 2xx, no answer within 10 seconds, or a url that does not resolve to a publicly routable address leaves status at pending_verification and returns 422. The token alone never activates an endpoint.

Takes any type of body and a specified content type, and returns a wrapper object for the known response body format(s).

Corresponds with POST /api/v1/webhooks/{id}/verify (the `VerifyWebhook` operationId).

func (*ClientWithResponses) VerifyWebhookWithResponse

func (c *ClientWithResponses) VerifyWebhookWithResponse(ctx context.Context, id int64, params *VerifyWebhookParams, body VerifyWebhookJSONRequestBody, reqEditors ...RequestEditorFn) (*VerifyWebhookResponse, error)

VerifyWebhookWithResponse Verify a builder webhook destination

Activates a pending webhook destination. Two conditions must both hold: the one-time verification token matches and has not expired, AND the destination answers 2xx to a signed challenge this operation POSTs to the endpoint's stored url. The challenge body is {"type":"webhook.verification","token":"<verification_token>","webhook_id":<id>}. It carries x-0xinsider-event-type: webhook.verification plus the same x-0xinsider-timestamp and x-0xinsider-signature headers a delivery carries, signed with that endpoint's signing_secret, so verify it exactly as you verify a delivery. Answer any 2xx within 10 seconds; the challenge response body is never read, and the challenge follows no redirects. A status outside 2xx, no answer within 10 seconds, or a url that does not resolve to a publicly routable address leaves status at pending_verification and returns 422. The token alone never activates an endpoint.

Takes a body of the `application/json` content type, and returns a wrapper object for the known response body format(s).

Corresponds with POST /api/v1/webhooks/{id}/verify (the `VerifyWebhook` operationId).

type ClientWithResponsesInterface

type ClientWithResponsesInterface interface {

	// GetApiDiscoveryWithResponse API discovery
	//
	// Unauthenticated API-origin discovery document pointing agents to the canonical API base URL, full docs, web-origin OpenAPI spec, health check, and the COMPLETE index of authenticated data routes. data.authenticated_routes is the whole authenticated route surface, not a sample: it carries every authenticated route this spec documents, so an agent that starts here never has to guess a path. The index is a hand-maintained const in backend/src/api_v1/discovery.rs kept in step with this spec by review; no automated check compares the two, so treat this spec as authoritative if they ever disagree.
	//
	// Returns a wrapper object for the known response body format(s).
	//
	// Corresponds with GET /api/v1 (the `GetApiDiscovery` operationId).
	GetApiDiscoveryWithResponse(ctx context.Context, params *GetApiDiscoveryParams, reqEditors ...RequestEditorFn) (*GetApiDiscoveryResponse, error)

	// RegisterAgentWithResponse Register an agent for a sandbox key
	//
	// Self-serve agent onboarding: no account, no request body, no human step. Returns a sandbox API key (oxi_sk_test_...) and the path to live access. The key works only on the sandbox server (https://0xinsider.com/sandbox/api/v1), where it is optional: send it as Authorization: Bearer to exercise the credential path, and the sandbox answers a malformed key with the production 401. Nothing is stored, so the key cannot be listed or revoked and does not expire; register again for a new one. The live API answers a sandbox key with 401 invalid_api_key and error.reason sandbox_api_key. Live data needs an account with an active Pro subscription, and either an oxi_sk_live_ key from https://0xinsider.com/developers or an OAuth access token (https://0xinsider.com/auth.md). The request body is not read.
	//
	// Returns a wrapper object for the known response body format(s).
	//
	// Corresponds with POST /api/v1/agents/register (the `RegisterAgent` operationId).
	RegisterAgentWithResponse(ctx context.Context, params *RegisterAgentParams, reqEditors ...RequestEditorFn) (*RegisterAgentResponse, error)

	// SearchContentWithResponse Search editorial content
	//
	// Search 0xinsider editorial content by keyword. Returns backend-owned learn, glossary, comparison, research, and trading-strategy items with canonical URLs. Opaque ranking scores are not exposed.
	//
	// Returns a wrapper object for the known response body format(s).
	//
	// Corresponds with GET /api/v1/content/search (the `SearchContent` operationId).
	SearchContentWithResponse(ctx context.Context, params *SearchContentParams, reqEditors ...RequestEditorFn) (*SearchContentResponse, error)

	// GetCoverageWithResponse Which reads the API serves for Polymarket
	//
	// Unauthenticated discovery endpoint that declares which V1 data surfaces the API serves for Polymarket, the one venue it covers. Every capability reports supported. Canonical since #16315; GET /api/v1/platforms is its deprecated alias with the same body.
	//
	// Returns a wrapper object for the known response body format(s).
	//
	// Corresponds with GET /api/v1/coverage (the `GetCoverage` operationId).
	GetCoverageWithResponse(ctx context.Context, params *GetCoverageParams, reqEditors ...RequestEditorFn) (*GetCoverageResponse, error)

	// SubmitWhaleDatasetWithBodyWithResponse Create an immutable whale dataset
	//
	// Extract at most 1,000,000 rows and 256 MiB uncompressed; exceeding either bound fails the job and publishes no partial file. Window and filters freeze on admission; rows and source facts freeze on one worker database snapshot. NDJSON uses exact decimal strings, with no current grade or market enrichment. The manifest checkpoint includes already committed arrivals after to plus later/open writers, with intentional overlap. Paid export scope; jobs are private to the credential owner. Shares the 20/day owner export quota and fair worker admission with trader exports; datasets also have a combined 5/hour quota. Three worker attempts, 24-hour retention, no partial download; cancellation consumes its reservation. Coverage is whale alerts, not all provider fills.
	//
	// Takes any type of body and a specified content type, and returns a wrapper object for the known response body format(s).
	//
	// Corresponds with POST /api/v1/datasets/whale-trades (the `SubmitWhaleDataset` operationId).
	SubmitWhaleDatasetWithBodyWithResponse(ctx context.Context, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*SubmitWhaleDatasetResponse, error)

	// SubmitWhaleDatasetWithResponse Create an immutable whale dataset
	//
	// Extract at most 1,000,000 rows and 256 MiB uncompressed; exceeding either bound fails the job and publishes no partial file. Window and filters freeze on admission; rows and source facts freeze on one worker database snapshot. NDJSON uses exact decimal strings, with no current grade or market enrichment. The manifest checkpoint includes already committed arrivals after to plus later/open writers, with intentional overlap. Paid export scope; jobs are private to the credential owner. Shares the 20/day owner export quota and fair worker admission with trader exports; datasets also have a combined 5/hour quota. Three worker attempts, 24-hour retention, no partial download; cancellation consumes its reservation. Coverage is whale alerts, not all provider fills.
	//
	// Takes a body of the `application/json` content type, and returns a wrapper object for the known response body format(s).
	//
	// Corresponds with POST /api/v1/datasets/whale-trades (the `SubmitWhaleDataset` operationId).
	SubmitWhaleDatasetWithResponse(ctx context.Context, body SubmitWhaleDatasetJSONRequestBody, reqEditors ...RequestEditorFn) (*SubmitWhaleDatasetResponse, error)

	// GetWhaleDatasetStatusWithResponse Read a whale dataset job
	//
	// Read queued, running, cancel_requested, ready, failed, reconcile_required, expired or cancelled. Poll only while next_action is poll, after poll_after_s. Ready manifests contain count, content and compressed SHA-256, schema, filters, source, horizon, expiry and replay continuation. Deltas do not retain the finite time filter and can repeat rows; deduplicate by wt_ ID (payload.whale_alert_id when not expanded). This is an insertion feed, not update/delete CDC. Paid export scope; jobs are private to the credential owner. Shares the 20/day owner export quota and fair worker admission with trader exports; datasets also have a combined 5/hour quota. Three worker attempts, 24-hour retention, no partial download; cancellation consumes its reservation. Coverage is whale alerts, not all provider fills.
	//
	// Returns a wrapper object for the known response body format(s).
	//
	// Corresponds with GET /api/v1/datasets/whale-trades/{job_id} (the `GetWhaleDatasetStatus` operationId).
	GetWhaleDatasetStatusWithResponse(ctx context.Context, jobId int64, reqEditors ...RequestEditorFn) (*GetWhaleDatasetStatusResponse, error)

	// CancelWhaleDatasetWithResponse Cancel a whale dataset job
	//
	// Cancel queued jobs immediately and request running jobs stop at their next safe point. Repeating cancel converges on the current state; cancellation after the completion fence leaves the artifact ready. Paid export scope; jobs are private to the credential owner. Shares the 20/day owner export quota and fair worker admission with trader exports; datasets also have a combined 5/hour quota. Three worker attempts, 24-hour retention, no partial download; cancellation consumes its reservation. Coverage is whale alerts, not all provider fills.
	//
	// Returns a wrapper object for the known response body format(s).
	//
	// Corresponds with POST /api/v1/datasets/whale-trades/{job_id}/cancel (the `CancelWhaleDataset` operationId).
	CancelWhaleDatasetWithResponse(ctx context.Context, jobId int64, reqEditors ...RequestEditorFn) (*CancelWhaleDatasetResponse, error)

	// DownloadWhaleDatasetWithResponse Download an immutable whale dataset
	//
	// Download only a ready artifact; status handles failure and cancellation. Retired artifacts return 410 at serving time. Paid export scope; jobs are private to the credential owner. Shares the 20/day owner export quota and fair worker admission with trader exports; datasets also have a combined 5/hour quota. Three worker attempts, 24-hour retention, no partial download; cancellation consumes its reservation. Coverage is whale alerts, not all provider fills.
	//
	// Returns a wrapper object for the known response body format(s).
	//
	// Corresponds with GET /api/v1/datasets/whale-trades/{job_id}/download (the `DownloadWhaleDataset` operationId).
	DownloadWhaleDatasetWithResponse(ctx context.Context, jobId int64, reqEditors ...RequestEditorFn) (*DownloadWhaleDatasetResponse, error)

	// GetEventReplaySinceWithResponse Replay public large-trade events
	//
	// Returns durable public large-trade events strictly after an opaque cursor, in commit order: events are ordered by the position at which their write became visible to every reader (whale_alerts.inserted_xid), then by whale_alerts.id, and a page never reaches past the oldest write transaction still open when it was read. A trade whose id is lower than one already delivered but whose write finished later is therefore delivered on a later request instead of being skipped (#16180). This is a separate API-key contract from the browser/session /api/events/feed stream: browser-only and private alert, following, radar, and position patch events are excluded until they have a durable public outbox.
	//
	// Returns a wrapper object for the known response body format(s).
	//
	// Corresponds with GET /api/v1/events/feed/since (the `GetEventReplaySince` operationId).
	GetEventReplaySinceWithResponse(ctx context.Context, params *GetEventReplaySinceParams, reqEditors ...RequestEditorFn) (*GetEventReplaySinceResponse, error)

	// ListGamesWithResponse List covered games
	//
	// One coherent game view per row: both sides with their provider ids and live scores, the UTC kickoff, the provider's own status, the esports series format, and every linked Polymarket market with its condition id and outcome token ids. Built from the same provider-first live and upcoming projections the site's sports boards use, so a request pays no provider fan-out of its own. Ordered by kickoff, then by event_slug; games whose kickoff the provider has not published sort last. coverage names the sports and leagues this deployment serves and any scope whose source was unavailable for the read, so an empty page is never ambiguous. A sport or status outside the published vocabulary returns an empty page rather than a 400. Carries the board's existing competitor-bound provider moneyline price state by default, with an observation clock and explicit incomplete or invalid state. It does not fetch another provider endpoint. Sharp-money splits and holder identities remain on their own gated routes.
	//
	// Returns a wrapper object for the known response body format(s).
	//
	// Corresponds with GET /api/v1/games (the `ListGames` operationId).
	ListGamesWithResponse(ctx context.Context, params *ListGamesParams, reqEditors ...RequestEditorFn) (*ListGamesResponse, error)

	// GetGameWithResponse Get one game
	//
	// The same game object GET /api/v1/games returns, for one 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. A slug outside the published coverage returns 404, including a real Polymarket event in a sport this deployment does not serve; GET /api/v1/games names what is covered.
	//
	// Returns a wrapper object for the known response body format(s).
	//
	// Corresponds with GET /api/v1/games/{event_slug} (the `GetGame` operationId).
	GetGameWithResponse(ctx context.Context, eventSlug string, params *GetGameParams, reqEditors ...RequestEditorFn) (*GetGameResponse, error)

	// GetHealthWithResponse Health check
	//
	// Returns API health status. No authentication required. Limited to 120 requests per minute per IP.
	//
	// Returns a wrapper object for the known response body format(s).
	//
	// Corresponds with GET /api/v1/health (the `GetHealth` operationId).
	GetHealthWithResponse(ctx context.Context, params *GetHealthParams, reqEditors ...RequestEditorFn) (*GetHealthResponse, error)

	// ListInsiderRadarWithResponse Get insider radar flags
	//
	// Deprecated alias of GET /api/v1/suspicious-trades (2026-09-23), kept live with no retirement date; responses carry Deprecation and a Link rel="successor-version" to it. Stored trades whose recorded suspicion score meets the live flag threshold. Evidence contains the scorer's stored signals. Cursor-paginated by suspicion score. mode=live (default) uses fresh cached pages; mode=stable pins pagination to one published scoring generation and returns cursor_expired when scores or filters change.
	//
	// Returns a wrapper object for the known response body format(s).
	//
	// Corresponds with GET /api/v1/insider-radar (the `ListInsiderRadar` operationId).
	//
	// Deprecated: this operation has been marked as deprecated upstream, but no `x-deprecated-reason` was set
	ListInsiderRadarWithResponse(ctx context.Context, params *ListInsiderRadarParams, reqEditors ...RequestEditorFn) (*ListInsiderRadarResponse, error)

	// GetInsiderRadarFlagWithResponse Get insider radar flag by ID
	//
	// Deprecated alias of GET /api/v1/suspicious-trades/{id} (2026-09-23), kept live with no retirement date; responses carry Deprecation and a Link rel="successor-version" to it. The envelope keeps object: radar_flag, so an integration that branches on it keeps working here. Returns one suspicious-trading radar flag by raw whale_alerts.id or the rf_-prefixed id emitted by list responses.
	//
	// Returns a wrapper object for the known response body format(s).
	//
	// Corresponds with GET /api/v1/insider-radar/{id} (the `GetInsiderRadarFlag` operationId).
	//
	// Deprecated: this operation has been marked as deprecated upstream, but no `x-deprecated-reason` was set
	GetInsiderRadarFlagWithResponse(ctx context.Context, id string, params *GetInsiderRadarFlagParams, reqEditors ...RequestEditorFn) (*GetInsiderRadarFlagResponse, error)

	// ListLargePositionsWithResponse List large positions
	//
	// Returns the largest current open positions from graded traders, value-descending, with opaque cursor pagination. This is a change-detection feed, not a holder list: a row needs a current value of at least 50,000 USD and a live detection in the last 24 hours, so a wallet that holds a market without moving is not listed. For every graded holder of one market use GET /api/v1/market/{condition_id}/holders. Polymarket-only by design: the large-positions scanner filters platform = 'polymarket' (backend/crates/large-positions/src/scanner.rs), so only Polymarket rows are scanned and an unknown condition_id filter returns an empty list (never fabricated rows). The teaser cap that the internal product UI applies to anonymous viewers does not apply here: the API key already proves an active Pro subscription (wire tier `insider`), so authed API callers get full access.
	//
	// Returns a wrapper object for the known response body format(s).
	//
	// Corresponds with GET /api/v1/large-positions (the `ListLargePositions` operationId).
	ListLargePositionsWithResponse(ctx context.Context, params *ListLargePositionsParams, reqEditors ...RequestEditorFn) (*ListLargePositionsResponse, error)

	// ListLargeTradesWithResponse List large trades
	//
	// Returns recent large trades with signal scoring and persisted suspicion facts. Filter by size, category, trader grade, or persisted suspicion. Filters are applied before pagination, and every request uses SQL-backed limit + 1 pagination so has_more and next_cursor reflect the filtered result set. Cursor-paginated, newest first. Market categories come from provider-backed market_canonical identity. The response adds a top-level `data_quality` object beside `data`, grouping alert, trade, trader, ranking, market, and volume fields by their database writer. `whale_alerts.inserted_xid` is reported as unknown because it is a transaction identifier rather than a timestamp. Its stored clocks are part of the ETag; `meta` continues to hold transport cache facts. Pass since to poll for new trades: the answer holds only the trades recorded after the one you name, and with If-None-Match a poll that finds none is 304 with an empty body.
	//
	// Returns a wrapper object for the known response body format(s).
	//
	// Corresponds with GET /api/v1/large-trades (the `ListLargeTrades` operationId).
	ListLargeTradesWithResponse(ctx context.Context, params *ListLargeTradesParams, reqEditors ...RequestEditorFn) (*ListLargeTradesResponse, error)

	// ListLargeTradeHistoryWithResponse Replay historical large trades
	//
	// Returns historical large trades from local whale_alerts rows, not request-time provider fetches. Filter by condition_id, trader, category, minimum grade, persisted suspicion, platform, and RFC3339 from/to windows. All filters are pushed into SQL before LIMIT, every request uses SQL-backed limit + 1 pagination, and results are ordered newest first by traded_at desc, id desc. Metadata exposes local_replay source and best_effort completeness. POINT IN TIME: signal_score, trader.grade and the min_grade filter carry today's values on every row however old, so a backtest that selects by them selects wallets on what they did after the trade. The point-in-time fields are recorded_signal_score (from 2026-08-03T11:59Z; null before, and never backfilled, because the trader statistics it reads at insert were not kept for older rows) and trader.grade_at_trade with trader.grade_at_trade_status (from 2026-09-19T23:00Z; unknown before). CAPTURE RULES changed over the archive's life: rows before 2026-02-02 are sparse (at most a few hundred a month); from 2026-02-02 the floor was 3,000 USD (1.4% of rows through 2026-07-05 are smaller) and trades at any price were kept; from 2026-07-06 a trade is kept at 10,000 USD or more (1,000 USD in earnings markets) and only when priced below 0.97 (0.99 in earnings markets). Pass min_size=10000 for one size rule across the whole range; monthly row counts still follow the sports calendar. Until 2026-07-17 one match could be stored twice, once per wallet: from 2026-05-01 to 2026-07-17, 27.7% of rows at 10,000 USD or more share a transaction and market with another stored wallet, almost always a Yes buyer and a No buyer filled against each other. From 2026-07-18 a row is the taker's side only. Before 2026-05 the transaction hash is mostly absent, so the share cannot be measured there. From 2026-09-23 a fill must ALSO be at least 0.1% of its market's recorded traded volume, Polymarket's own share count, so a $10,000 print that lands in a market which has already traded tens of millions of shares is no longer kept; rows written before that date were not re-filtered. The response adds a top-level `data_quality` object beside `data`, grouping alert, trade, trader, ranking, market, and volume fields by their database writer. `whale_alerts.inserted_xid` is reported as unknown because it is a transaction identifier rather than a timestamp. Its stored clocks are part of the ETag; `meta` continues to hold transport cache facts.
	//
	// Returns a wrapper object for the known response body format(s).
	//
	// Corresponds with GET /api/v1/large-trades/history (the `ListLargeTradeHistory` operationId).
	ListLargeTradeHistoryWithResponse(ctx context.Context, params *ListLargeTradeHistoryParams, reqEditors ...RequestEditorFn) (*ListLargeTradeHistoryResponse, error)

	// GetLargeTradeWithResponse Get large trade by ID
	//
	// Returns one large trade by raw whale_alerts.id or the wt_-prefixed id emitted by list and history responses.
	//
	// Returns a wrapper object for the known response body format(s).
	//
	// Corresponds with GET /api/v1/large-trades/{id} (the `GetLargeTrade` operationId).
	GetLargeTradeWithResponse(ctx context.Context, id string, params *GetLargeTradeParams, reqEditors ...RequestEditorFn) (*GetLargeTradeResponse, error)

	// ListLargeTradeCounterpartyExecutionsWithResponse Page counterparty executions
	//
	// Returns a bounded execution page from the immutable snapshot emitted by large-trade detail. A stale or changed snapshot returns a cursor-expired error so clients restart from detail.
	//
	// Returns a wrapper object for the known response body format(s).
	//
	// Corresponds with GET /api/v1/large-trades/{id}/counterparties/executions (the `ListLargeTradeCounterpartyExecutions` operationId).
	ListLargeTradeCounterpartyExecutionsWithResponse(ctx context.Context, id string, params *ListLargeTradeCounterpartyExecutionsParams, reqEditors ...RequestEditorFn) (*ListLargeTradeCounterpartyExecutionsResponse, error)

	// ListLargeTradeCounterpartyMakersWithResponse Page maker counterparties
	//
	// Returns a bounded maker-wallet page for one exact execution. Percentages keep the complete execution denominator across pages.
	//
	// Returns a wrapper object for the known response body format(s).
	//
	// Corresponds with GET /api/v1/large-trades/{id}/counterparties/executions/{execution_id}/makers (the `ListLargeTradeCounterpartyMakers` operationId).
	ListLargeTradeCounterpartyMakersWithResponse(ctx context.Context, id string, executionId string, params *ListLargeTradeCounterpartyMakersParams, reqEditors ...RequestEditorFn) (*ListLargeTradeCounterpartyMakersResponse, error)

	// ListLeaderboardWithResponse Get trader leaderboard
	//
	// Returns ranked traders (grades S/A/B) sorted by score descending. Supports cursor pagination and optional category/strategy filters.
	//
	// Returns a wrapper object for the known response body format(s).
	//
	// Corresponds with GET /api/v1/leaderboard (the `ListLeaderboard` operationId).
	ListLeaderboardWithResponse(ctx context.Context, params *ListLeaderboardParams, reqEditors ...RequestEditorFn) (*ListLeaderboardResponse, error)

	// ListTrendingWalletsWithResponse List trending wallets
	//
	// Returns wallets ranked by Polymarket weekly/monthly P&L (Polymarket-only discovery), with opaque page-cursor pagination. trending_pnl_usd and the by-PNL row order come from Polymarket's canonical leaderboard (data-api.polymarket.com/v2/leaderboard?time_period=week|month&sort_by=PNL), not a locally summed realized-leaf total. Each row also carries window volume, distinct markets, grade, hot-streak tier, and a shape-only daily P&L sparkline derived from the Polymarket user-pnl cumulative curve (per-day deltas; not guaranteed to sum to trending_pnl_usd). The response comes from a retained Redis board: meta.cached is true, and meta.cache_age_s reports the original board age when known (omitted when unknown). A backend read of a board at least 120 seconds old attempts a detached refresh; after a quiet spell a product board may be up to a day old. HTTP freshness ends at 120 seconds; max-age plus stale-while-revalidate cannot exceed the remaining original retention. Unknown age grants no cache window. A true cold read returns 503 (warming, retry-after), never a fabricated ranking. Polymarket-only: the read model filters platform = 'polymarket'. Cursors are bound to the effective limit, window and ranked-board generation; a changed board or request scope returns 400 with error.reason=cursor_expired, and legacy page-only cursors must restart from page one.
	//
	// Returns a wrapper object for the known response body format(s).
	//
	// Corresponds with GET /api/v1/leaderboard/trending (the `ListTrendingWallets` operationId).
	ListTrendingWalletsWithResponse(ctx context.Context, params *ListTrendingWalletsParams, reqEditors ...RequestEditorFn) (*ListTrendingWalletsResponse, error)

	// GetMarketCandlesWithResponse Get market OHLC price candles
	//
	// Provider-first bucketed OHLC price candles for a market's outcome tokens, derived from the stored token_price_snapshots series (the same series the market-detail chart renders; covers open and resolved markets). Because the stored data is daily, a 1d bucket typically carries one point so its open/high/low/close all equal that day's close; 1w aggregates real OHLC across the observed daily closes. No intraday fidelity is fabricated. Query field names and recognized values are URL-decoded; duplicate recognized fields use the last value and unknown fields are ignored. When both bounds are present, from must be less than or equal to to; malformed or inverted bounds answer 400.
	//
	// Returns a wrapper object for the known response body format(s).
	//
	// Corresponds with GET /api/v1/market/{condition_id}/candles (the `GetMarketCandles` operationId).
	GetMarketCandlesWithResponse(ctx context.Context, conditionId string, params *GetMarketCandlesParams, reqEditors ...RequestEditorFn) (*GetMarketCandlesResponse, error)

	// GetMarketContextMarkdownWithResponse Get market context (Markdown)
	//
	// Authenticated, self-contained Polymarket market evidence document. Renders the same typed data as the market snapshot with trust included: identity, outcome labels and tokens, cached quotes, liquidity, live sports, and per-source freshness or unavailable reasons. Provider text is encoded as indented JSON data. Accepts raw or mkt_-prefixed condition IDs. Unknown markets return 404. No ETag or conditional requests; use the snapshot JSON route for those.
	//
	// Returns a wrapper object for the known response body format(s).
	//
	// Corresponds with GET /api/v1/market/{condition_id}/context.md (the `GetMarketContextMarkdown` operationId).
	GetMarketContextMarkdownWithResponse(ctx context.Context, conditionId string, params *GetMarketContextMarkdownParams, reqEditors ...RequestEditorFn) (*GetMarketContextMarkdownResponse, error)

	// GetMarketFlowWithResponse Get a market's flow and top positions
	//
	// Canonical since #16312; GET /api/v1/market/{condition_id}/intel is its deprecated alias and serves the same body under object market_intel. One market's flow and top positions: the signed flow of every tracked large trade in the window (net_flow_usd and its YES or NO direction), the large-trade count, gross buy and sell volumes, and the top five graded trader positions.
	//
	// Returns a wrapper object for the known response body format(s).
	//
	// Corresponds with GET /api/v1/market/{condition_id}/flow (the `GetMarketFlow` operationId).
	GetMarketFlowWithResponse(ctx context.Context, conditionId string, params *GetMarketFlowParams, reqEditors ...RequestEditorFn) (*GetMarketFlowResponse, error)

	// GetMarketHoldersWithResponse List a market's graded holders
	//
	// The graded holder roster of one market, the list a Pick of the Day shows for its market, for any Polymarket market: every S/A/B wallet with open shares on either outcome, from a complete provider holder scan, each with its shares, Polymarket's own currentValue for the leg, its grade, its win record in the market's category, and its badges. Both outcomes are listed; a wallet holding both is listed once on its net side. Ordered by current_value_usd DESC, then shares DESC, then address. The roster is computed at most once a minute per market and shared by every caller; a page is cut from that roster, so paging is cheap and `total` is exact. The route never widens past the graded cohort: `scan.wallet_count` reports every wallet the walk saw, graded or not. An incomplete, unstable or failed scan is a 503 with Retry-After, never a shorter list. A complete scan in which no S, A or B wallet holds either outcome is a 200 with an empty holders list and zero totals; retrying cannot change it. The cohort is S, A and B by the wallet's current grade (`traders.latest_grade`); a C, D, F or ungraded wallet is never listed here and appears only inside `scan.wallet_count`. A count here will not match GET /api/v1/positions for the same market, and the cohort is only one of three reasons: /positions reads the `wallet_positions` mirror rather than this live provider scan, and without a `wallet` its `min_size` defaults to 100 USD, so it drops the smaller legs this route keeps. Read a difference as all three, never as a grade count. This is current state and takes no as-of parameter: the roster is at most 60 s old over a provider walk at most 180 s old, and `scan.fetched_at` is the only timestamp on it. For a point-in-time roster, snapshot this route yourself on your own schedule; the one frozen roster the API serves is `display_holders` on GET /api/v1/pick-of-the-day, for that pick's market and backed side at publication.
	//
	// Returns a wrapper object for the known response body format(s).
	//
	// Corresponds with GET /api/v1/market/{condition_id}/holders (the `GetMarketHolders` operationId).
	GetMarketHoldersWithResponse(ctx context.Context, conditionId string, params *GetMarketHoldersParams, reqEditors ...RequestEditorFn) (*GetMarketHoldersResponse, error)

	// GetMarketIntelWithResponse Get market intelligence
	//
	// Deprecated since #16312: use GET /api/v1/market/{condition_id}/flow, which serves the same body under object market_flow. This path stays live, keeps object market_intel, and answers with Deprecation and successor Link headers. One market's flow and top positions: the signed flow of every tracked large trade in the window (net_flow_usd and its YES or NO direction), the large-trade count, gross buy and sell volumes, and the top five graded trader positions.
	//
	// Returns a wrapper object for the known response body format(s).
	//
	// Corresponds with GET /api/v1/market/{condition_id}/intel (the `GetMarketIntel` operationId).
	//
	// Deprecated: this operation has been marked as deprecated upstream, but no `x-deprecated-reason` was set
	GetMarketIntelWithResponse(ctx context.Context, conditionId string, params *GetMarketIntelParams, reqEditors ...RequestEditorFn) (*GetMarketIntelResponse, error)

	// GetMarketSnapshotWithResponse Get market live snapshot
	//
	// Provider-first market card snapshot with canonical identity, outcome labels, cached top-of-book when available, liquidity, live sports context, and explicit freshness/unavailable states.
	//
	// Returns a wrapper object for the known response body format(s).
	//
	// Corresponds with GET /api/v1/market/{condition_id}/snapshot (the `GetMarketSnapshot` operationId).
	GetMarketSnapshotWithResponse(ctx context.Context, conditionId string, params *GetMarketSnapshotParams, reqEditors ...RequestEditorFn) (*GetMarketSnapshotResponse, error)

	// ExploreMarketsWithResponse Explore markets
	//
	// Browse whale-active titled markets with category, platform, status, and keyword filters. Explore is Polymarket-only: the platform parameter is accepted for backward-compatibility but every request returns Polymarket markets. Paginates visible discovery entries rather than raw market rows, returns live category/platform facets alongside grouped event clusters or standalone markets, and includes total on the first page only. Each grouped event contains at most 12 markets, retaining the selected representative within that cap. Categories come straight from provider metadata (Polymarket Gamma) and facets are flat value/label/count rows.
	//
	// Returns a wrapper object for the known response body format(s).
	//
	// Corresponds with GET /api/v1/markets/explore (the `ExploreMarkets` operationId).
	ExploreMarketsWithResponse(ctx context.Context, params *ExploreMarketsParams, reqEditors ...RequestEditorFn) (*ExploreMarketsResponse, error)

	// BatchGetMarketFlowWithBodyWithResponse Batch market flow
	//
	// Returns each market's flow and top positions for 1-25 raw provider condition_id values. Results preserve request order, duplicate inputs return duplicate rows, and each item is charged one batch item unit before execution. Do not pass prefixed mkt_ IDs; use market.condition_id from search or explore.
	//
	// Takes any type of body and a specified content type, and returns a wrapper object for the known response body format(s).
	//
	// Corresponds with POST /api/v1/markets/flow/batch (the `BatchGetMarketFlow` operationId).
	BatchGetMarketFlowWithBodyWithResponse(ctx context.Context, params *BatchGetMarketFlowParams, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*BatchGetMarketFlowResponse, error)

	// BatchGetMarketFlowWithResponse Batch market flow
	//
	// Returns each market's flow and top positions for 1-25 raw provider condition_id values. Results preserve request order, duplicate inputs return duplicate rows, and each item is charged one batch item unit before execution. Do not pass prefixed mkt_ IDs; use market.condition_id from search or explore.
	//
	// Takes a body of the `application/json` content type, and returns a wrapper object for the known response body format(s).
	//
	// Corresponds with POST /api/v1/markets/flow/batch (the `BatchGetMarketFlow` operationId).
	BatchGetMarketFlowWithResponse(ctx context.Context, params *BatchGetMarketFlowParams, body BatchGetMarketFlowJSONRequestBody, reqEditors ...RequestEditorFn) (*BatchGetMarketFlowResponse, error)

	// BatchGetMarketIntelWithBodyWithResponse Batch market intelligence
	//
	// Deprecated since #16312: use POST /api/v1/markets/flow/batch, which returns the same items under object market_flow_batch. This path stays live, keeps object market_intel_batch, and answers with Deprecation and successor Link headers. Returns each market's flow and top positions for 1-25 raw provider condition_id values. Results preserve request order, duplicate inputs return duplicate rows, and each item is charged one batch item unit before execution. Do not pass prefixed mkt_ IDs; use market.condition_id from search or explore.
	//
	// Takes any type of body and a specified content type, and returns a wrapper object for the known response body format(s).
	//
	// Corresponds with POST /api/v1/markets/intel/batch (the `BatchGetMarketIntel` operationId).
	//
	// Deprecated: this operation has been marked as deprecated upstream, but no `x-deprecated-reason` was set
	BatchGetMarketIntelWithBodyWithResponse(ctx context.Context, params *BatchGetMarketIntelParams, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*BatchGetMarketIntelResponse, error)

	// BatchGetMarketIntelWithResponse Batch market intelligence
	//
	// Deprecated since #16312: use POST /api/v1/markets/flow/batch, which returns the same items under object market_flow_batch. This path stays live, keeps object market_intel_batch, and answers with Deprecation and successor Link headers. Returns each market's flow and top positions for 1-25 raw provider condition_id values. Results preserve request order, duplicate inputs return duplicate rows, and each item is charged one batch item unit before execution. Do not pass prefixed mkt_ IDs; use market.condition_id from search or explore.
	//
	// Takes a body of the `application/json` content type, and returns a wrapper object for the known response body format(s).
	//
	// Corresponds with POST /api/v1/markets/intel/batch (the `BatchGetMarketIntel` operationId).
	//
	// Deprecated: this operation has been marked as deprecated upstream, but no `x-deprecated-reason` was set
	BatchGetMarketIntelWithResponse(ctx context.Context, params *BatchGetMarketIntelParams, body BatchGetMarketIntelJSONRequestBody, reqEditors ...RequestEditorFn) (*BatchGetMarketIntelResponse, error)

	// SearchMarketsWithResponse Search markets
	//
	// Search prediction markets by keyword. Returns representative market matches with status, category, and platform metadata. Cursor pagination advances over grouped market results rather than raw sub-market rows.
	//
	// Returns a wrapper object for the known response body format(s).
	//
	// Corresponds with GET /api/v1/markets/search (the `SearchMarkets` operationId).
	SearchMarketsWithResponse(ctx context.Context, params *SearchMarketsParams, reqEditors ...RequestEditorFn) (*SearchMarketsResponse, error)

	// ListSharpMoneyFlowsWithResponse List ranked sharp-money flows
	//
	// Canonical path for ranked sharp-money flows; /api/v1/markets/smart-money-flows remains live as a deprecated byte-identical alias of it. Ranks markets by absolute net S/A/B-grade whale flow over a requested timeframe. Use this discovery endpoint to answer where sharp money is flowing before drilling into a specific market with /api/v1/market/{condition_id}/flow. Pagination is anchored by an opaque cursor carrying the first-page as_of timestamp, normalized effective filters, ranking revision and aggregate collection revision; a changed filter or collection returns `cursor_expired` so callers request the first page again.
	//
	// Returns a wrapper object for the known response body format(s).
	//
	// Corresponds with GET /api/v1/markets/sharp-money-flows (the `ListSharpMoneyFlows` operationId).
	ListSharpMoneyFlowsWithResponse(ctx context.Context, params *ListSharpMoneyFlowsParams, reqEditors ...RequestEditorFn) (*ListSharpMoneyFlowsResponse, error)

	// ListSmartMoneyFlowsWithResponse List ranked sharp-money flows (deprecated alias)
	//
	// Ranks markets by absolute net S/A/B-grade whale flow over a requested timeframe. Use this discovery endpoint to answer where sharp money is flowing before drilling into a specific market with /api/v1/market/{condition_id}/flow. Pagination is anchored by an opaque cursor carrying the first-page as_of timestamp, normalized effective filters, ranking revision and aggregate collection revision; a changed filter or collection returns `cursor_expired` so callers request the first page again. Deprecated alias of GET /api/v1/markets/sharp-money-flows, kept live and never removed; every response carries `Deprecation: @1783276950` (RFC 9745, 2026-07-05T18:42:30Z) and a `Link` to the successor (`rel="successor-version"`) and to the versioning policy (`rel="deprecation"`). No `Sunset` header is sent because no removal is planned.
	//
	// Returns a wrapper object for the known response body format(s).
	//
	// Corresponds with GET /api/v1/markets/smart-money-flows (the `ListSmartMoneyFlows` operationId).
	//
	// Deprecated: this operation has been marked as deprecated upstream, but no `x-deprecated-reason` was set
	ListSmartMoneyFlowsWithResponse(ctx context.Context, params *ListSmartMoneyFlowsParams, reqEditors ...RequestEditorFn) (*ListSmartMoneyFlowsResponse, error)

	// OpenMcpEventStreamWithResponse MCP GET: no server-to-client stream (405)
	//
	// The MCP Streamable HTTP transport lets a client GET the endpoint to open a server-to-client text/event-stream, and lets the server answer 405 Method Not Allowed when it offers no such stream. This server sends no notifications, so an authenticated GET answers 405 with Allow: POST, a JSON-RPC error body (code -32004) and X-Mcp-Error-Code: -32004; a conforming client (the reference @modelcontextprotocol/sdk included) reads the 405 as no stream here and does not retry. Without a credential the GET answers 401 with the WWW-Authenticate challenge naming /.well-known/oauth-protected-resource/api/v1/mcp, which is where a client that has only run the public handshake learns to start the OAuth flow. Until 2026-09-22 an authenticated GET answered 200 text/event-stream and closed the body at once, which conforming clients reconnected to every second. Every JSON-RPC request goes over POST.
	//
	// Returns a wrapper object for the known response body format(s).
	//
	// Corresponds with GET /api/v1/mcp (the `OpenMcpEventStream` operationId).
	OpenMcpEventStreamWithResponse(ctx context.Context, params *OpenMcpEventStreamParams, reqEditors ...RequestEditorFn) (*OpenMcpEventStreamResponse, error)

	// CreateMcpJsonRpcResponseWithBodyWithResponse Remote MCP endpoint (JSON-RPC)
	//
	// Model Context Protocol (MCP) Streamable HTTP transport. Accepts one JSON-RPC 2.0 request or notification. ID-bearing initialize, ping, tools/list, and tools/call requests receive one same-ID JSON-RPC response. ID-less ping, notifications/initialized, and notifications/cancelled receive HTTP 202 with no body; other ID-less methods and unsolicited response messages receive HTTP 400 with no body. Unknown cancellation IDs are ignored; cancellation does not stop running tool work. Remote MCP exposes 46 read-only tools for public V1 read operations: get_leaderboard, get_trader, batch_get_traders, get_large_trades, get_large_trade, get_large_trades_history, get_whale_trades, get_whale_trade, get_whale_trades_history, get_pre_game_sides, get_pre_game_side_observations, get_sports_edge_signals, get_sports_edge_observations, list_games, get_game, get_market_flow, batch_get_market_flow, get_market_intel, batch_get_market_intel, get_smart_money_flows, get_sharp_money_flows, get_market_snapshot, get_suspicious_trades, get_suspicious_trade, get_insider_radar, get_insider_radar_flag, get_positions, get_position_timeline, get_position_timeline_by_id, search_markets, search_content, explore_markets, get_event_replay_since, list_webhooks, get_webhook, get_daily_report_snapshot, get_weekly_report_snapshot, get_monthly_report_snapshot, get_report, get_trader_export_snapshot, get_platforms, get_large_positions, get_trending_wallets, get_trader_pnl, get_pick_of_the_day, get_pick_of_the_day_archive. Webhook create/update/delete/verify/rotate operations are intentionally not exposed as remote MCP tools. The remote endpoint advertises tools only; it does not implement resources/list, resources/read, prompts/list, or prompts/get. Each tool dispatches to the matching /api/v1/* handler in-process so auth, rate limits, and payload shape match. initialize, notifications/initialized, ping and tools/list answer without a credential; tools/call (and any GET) need Authorization: Bearer <token> with an OAuth 2.1 access token (see the oauth2 security scheme; a tool outside the token's scopes returns isError) or an API key, and without one answer HTTP 401 with a WWW-Authenticate challenge whose resource_metadata names the RFC 9728 document at /.well-known/oauth-protected-resource/api/v1/mcp. A key in a ?token= query parameter is rejected on every authenticated route (the public routes ignore it) with 401 invalid_api_key and error.reason api_key_in_query, because URLs land in shell history, browser history, and logs; a client that can only take a URL can run the @0xinsider/mcp stdio package. Mcp-Session-Id is minted on initialize and echoed on every response. Origin header, when present, is validated against the 0xinsider + localhost allowlist. tools/call arguments are validated against the tool's advertised inputSchema before anything runs: a non-object, an unknown key, a wrong type, an out-of-range number, a value outside an enum or an argument combination outside a oneOf answers a tool result with isError true whose text names the field, never a query built from the arguments that fit. Every tools/call result carries the REST envelope's meta verbatim (request_id, cached, cache_age_s, cost, and the route's provenance such as source and completeness on get_whale_trades_history or ranking_source, directional_source and the category_skill_* fields on get_sports_edge_signals) as structuredContent.meta beside the payload's own keys, and a tool failure carries structuredContent.error with the REST error fields verbatim (code, reason, param, doc_url, retry_at) plus retry_after_seconds, request_id and status, beside its text. The MCP-Protocol-Version request header is checked on every POST and GET: a value outside 2025-11-25, 2025-06-18, 2025-03-26 and 2024-11-05 answers HTTP 400 with JSON-RPC error -32600 before the body is read; an absent header is served as 2025-03-26, the transport specification's compatibility default. Browser preflight allows the header.
	//
	// Takes any type of body and a specified content type, and returns a wrapper object for the known response body format(s).
	//
	// Corresponds with POST /api/v1/mcp (the `CreateMcpJsonRpcResponse` operationId).
	CreateMcpJsonRpcResponseWithBodyWithResponse(ctx context.Context, params *CreateMcpJsonRpcResponseParams, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*CreateMcpJsonRpcResponseResponse, error)

	// CreateMcpJsonRpcResponseWithResponse Remote MCP endpoint (JSON-RPC)
	//
	// Model Context Protocol (MCP) Streamable HTTP transport. Accepts one JSON-RPC 2.0 request or notification. ID-bearing initialize, ping, tools/list, and tools/call requests receive one same-ID JSON-RPC response. ID-less ping, notifications/initialized, and notifications/cancelled receive HTTP 202 with no body; other ID-less methods and unsolicited response messages receive HTTP 400 with no body. Unknown cancellation IDs are ignored; cancellation does not stop running tool work. Remote MCP exposes 46 read-only tools for public V1 read operations: get_leaderboard, get_trader, batch_get_traders, get_large_trades, get_large_trade, get_large_trades_history, get_whale_trades, get_whale_trade, get_whale_trades_history, get_pre_game_sides, get_pre_game_side_observations, get_sports_edge_signals, get_sports_edge_observations, list_games, get_game, get_market_flow, batch_get_market_flow, get_market_intel, batch_get_market_intel, get_smart_money_flows, get_sharp_money_flows, get_market_snapshot, get_suspicious_trades, get_suspicious_trade, get_insider_radar, get_insider_radar_flag, get_positions, get_position_timeline, get_position_timeline_by_id, search_markets, search_content, explore_markets, get_event_replay_since, list_webhooks, get_webhook, get_daily_report_snapshot, get_weekly_report_snapshot, get_monthly_report_snapshot, get_report, get_trader_export_snapshot, get_platforms, get_large_positions, get_trending_wallets, get_trader_pnl, get_pick_of_the_day, get_pick_of_the_day_archive. Webhook create/update/delete/verify/rotate operations are intentionally not exposed as remote MCP tools. The remote endpoint advertises tools only; it does not implement resources/list, resources/read, prompts/list, or prompts/get. Each tool dispatches to the matching /api/v1/* handler in-process so auth, rate limits, and payload shape match. initialize, notifications/initialized, ping and tools/list answer without a credential; tools/call (and any GET) need Authorization: Bearer <token> with an OAuth 2.1 access token (see the oauth2 security scheme; a tool outside the token's scopes returns isError) or an API key, and without one answer HTTP 401 with a WWW-Authenticate challenge whose resource_metadata names the RFC 9728 document at /.well-known/oauth-protected-resource/api/v1/mcp. A key in a ?token= query parameter is rejected on every authenticated route (the public routes ignore it) with 401 invalid_api_key and error.reason api_key_in_query, because URLs land in shell history, browser history, and logs; a client that can only take a URL can run the @0xinsider/mcp stdio package. Mcp-Session-Id is minted on initialize and echoed on every response. Origin header, when present, is validated against the 0xinsider + localhost allowlist. tools/call arguments are validated against the tool's advertised inputSchema before anything runs: a non-object, an unknown key, a wrong type, an out-of-range number, a value outside an enum or an argument combination outside a oneOf answers a tool result with isError true whose text names the field, never a query built from the arguments that fit. Every tools/call result carries the REST envelope's meta verbatim (request_id, cached, cache_age_s, cost, and the route's provenance such as source and completeness on get_whale_trades_history or ranking_source, directional_source and the category_skill_* fields on get_sports_edge_signals) as structuredContent.meta beside the payload's own keys, and a tool failure carries structuredContent.error with the REST error fields verbatim (code, reason, param, doc_url, retry_at) plus retry_after_seconds, request_id and status, beside its text. The MCP-Protocol-Version request header is checked on every POST and GET: a value outside 2025-11-25, 2025-06-18, 2025-03-26 and 2024-11-05 answers HTTP 400 with JSON-RPC error -32600 before the body is read; an absent header is served as 2025-03-26, the transport specification's compatibility default. Browser preflight allows the header.
	//
	// Takes a body of the `application/json` content type, and returns a wrapper object for the known response body format(s).
	//
	// Corresponds with POST /api/v1/mcp (the `CreateMcpJsonRpcResponse` operationId).
	CreateMcpJsonRpcResponseWithResponse(ctx context.Context, params *CreateMcpJsonRpcResponseParams, body CreateMcpJsonRpcResponseJSONRequestBody, reqEditors ...RequestEditorFn) (*CreateMcpJsonRpcResponseResponse, error)

	// GetAccountIdentityWithResponse Identify the authenticated account and credential
	//
	// Returns caller-owned account and credential IDs, credential validity, paid-data entitlement and approved scopes. Null scopes mean full legacy developer-key access. Valid credentials can use this control-plane diagnostic path after paid access lapses; data routes still require active paid access. OAuth grants and named integration keys need read scope. Does not return credentials, payment details or personal contact details.
	//
	// Returns a wrapper object for the known response body format(s).
	//
	// Corresponds with GET /api/v1/me (the `GetAccountIdentity` operationId).
	GetAccountIdentityWithResponse(ctx context.Context, params *GetAccountIdentityParams, reqEditors ...RequestEditorFn) (*GetAccountIdentityResponse, error)

	// RedirectApiOpenapiSpecWithResponse Redirect to the canonical OpenAPI spec
	//
	// Unauthenticated API-origin compatibility redirect to the canonical web-origin OpenAPI JSON document at https://0xinsider.com/api/v1/openapi.json.
	//
	// Returns a wrapper object for the known response body format(s).
	//
	// Corresponds with GET /api/v1/openapi.json (the `RedirectApiOpenapiSpec` operationId).
	RedirectApiOpenapiSpecWithResponse(ctx context.Context, params *RedirectApiOpenapiSpecParams, reqEditors ...RequestEditorFn) (*RedirectApiOpenapiSpecResponse, error)

	// GetPickOfTheDayWithResponse Get today's Pick of the Day
	//
	// Returns the published picks for the current product day. Pro tier.
	//
	// `picks` holds up to ten ranked picks. Each pick carries the backed side, the pre-game price, the flat stake (`stake_usd`, 1000) and its return (`return_usd`; `return_per_100` keeps the literal $100 basis), the sharp-money holders, the grade, and a thesis. The price is frozen before kickoff. A prior day's pick never appears here; read the archive for it.
	//
	// `scheduled_picks` lists same-day slots that are selected but not released yet. Each slot exposes only `pick_rank`, `release_at`, and `kickoff`.
	//
	// When no pick is published for the current product day, the endpoint returns `404` with `error.code="not_found"` and `error.reason="pick_not_released"`. Branch on the reason; the code is frozen. The `404` is a schedule, not an outage.
	//
	// Do not poll. Read `Retry-After` or `error.retry_at` and schedule one request for that instant. The `404` response below says how the instant is chosen.
	//
	// Returns a wrapper object for the known response body format(s).
	//
	// Corresponds with GET /api/v1/pick-of-the-day (the `GetPickOfTheDay` operationId).
	GetPickOfTheDayWithResponse(ctx context.Context, params *GetPickOfTheDayParams, reqEditors ...RequestEditorFn) (*GetPickOfTheDayResponse, error)

	// GetPickOfTheDayArchiveWithResponse Get the Pick of the Day track record
	//
	// Returns every published pick with its outcome, unit score, closing-line value, and the rolling hit rate.
	//
	// Resolved picks are public. A pending pick's backed side appears only for an authenticated Pro key.
	//
	// Each row carries a CLV value or the reason it was not measured. Coverage divides measured rows by resolved rows published before kickoff. A post-kickoff publication is `not_applicable`.
	//
	// Returns a wrapper object for the known response body format(s).
	//
	// Corresponds with GET /api/v1/pick-of-the-day/archive (the `GetPickOfTheDayArchive` operationId).
	GetPickOfTheDayArchiveWithResponse(ctx context.Context, params *GetPickOfTheDayArchiveParams, reqEditors ...RequestEditorFn) (*GetPickOfTheDayArchiveResponse, error)

	// GetPickOfTheDayLedgerWithResponse Get the Pick of the Day commitment ledger
	//
	// Returns the pre-game commitment for every published pick, so the public track record can be checked by someone who was not watching when the pick dropped.
	//
	// One entry per (pick_date, pick_rank), ascending by pick_date then pick_rank, in one of three states. `sealed` is a live pick: the hash, the algorithm, the seal instant and the kickoff, and nothing that states a side or a price. `opened` is a settled pick: the nonce and the exact canonical payload the hash was taken over. `uncommitted` is a pick with no commitment -- published before the scheme existed, or one that reached kickoff unsealed -- named rather than omitted.
	//
	// To verify an opened entry: serialize nothing. Take the bytes of the `payload` object exactly as received, append the `commitment_nonce` decoded from hex, and sha256 the result; it equals `commitment_hash`. The payload is canonical JSON -- keys sorted by UTF-8 byte value, no insignificant whitespace, decimals as strings at full stored precision, timestamps whole-second UTC with a literal Z -- and it is served byte for byte as it was hashed.
	//
	// This is a proof contract, not the archive's display contract: nothing here is formatted for rendering, so an entry changes only when the pick does. A commitment is never written after kickoff and never rewritten by an outcome correction; `resolved_at` moving under an unchanged `commitment_hash` is a corrected market re-mapping an already-settled pick.
	//
	// Returns a wrapper object for the known response body format(s).
	//
	// Corresponds with GET /api/v1/pick-of-the-day/ledger (the `GetPickOfTheDayLedger` operationId).
	GetPickOfTheDayLedgerWithResponse(ctx context.Context, params *GetPickOfTheDayLedgerParams, reqEditors ...RequestEditorFn) (*GetPickOfTheDayLedgerResponse, error)

	// GetPlatformsWithResponse Get platform capability matrix
	//
	// Deprecated since #16315: use GET /api/v1/coverage, which serves the same body. This path stays live and answers with Deprecation and successor Link headers. Unauthenticated discovery endpoint that declares which V1 data surfaces the API serves for Polymarket, the one venue it covers. Every capability reports supported.
	//
	// Returns a wrapper object for the known response body format(s).
	//
	// Corresponds with GET /api/v1/platforms (the `GetPlatforms` operationId).
	//
	// Deprecated: this operation has been marked as deprecated upstream, but no `x-deprecated-reason` was set
	GetPlatformsWithResponse(ctx context.Context, params *GetPlatformsParams, reqEditors ...RequestEditorFn) (*GetPlatformsResponse, error)

	// ListPositionsWithResponse List current positions (positions-board feed)
	//
	// Returns the current positions-board feed backed by the wallet_positions mirror. Ordered by current_value_usd DESC with deterministic (wallet, condition_id, outcome_index) tiebreakers. Pre-reconcile rows (current_value_usd IS NULL) are excluded. Cursor-paginated. Every filter pushes into SQL. Deep cursor pages cost the same as the first page: the value bounds and the cursor are index conditions, so a page never rescans the feed from the top. With wallet, the same feed is read for one wallet or a book of up to 25 wallets from each wallet's own ordered index range, so the pages are that wallet's complete reconciled binary open positions and the cost is the page, never the board. min_size defaults to 100 on the board read, so a request with no wallet and no min_size drops positions valued under 100 USD; with wallet it defaults to 0 instead. Send min_size=0 to include every reconciled position. What a wallet read does not return: positions with shares at 0 (closed), rows the reconciler has not valued yet (current_value_usd IS NULL), and non-binary outcomes; per-row last_reconciled_at and freshness say how old each valuation is. Each row also carries additive `exact` source atoms as decimal strings with unit, scale and basis metadata; parse those values with decimal-safe arithmetic and do not reconstruct them from the display-safe numeric fields. The response adds a top-level `data_quality` object beside `data`, with positions, trader, and market groups owned by `wallet_positions.last_reconciled_at|updated_at`, `traders.last_synced`, and `market_canonical.last_refreshed_at`. Its stored clocks are part of the ETag; `meta` continues to hold transport cache facts.
	//
	// Returns a wrapper object for the known response body format(s).
	//
	// Corresponds with GET /api/v1/positions (the `ListPositions` operationId).
	ListPositionsWithResponse(ctx context.Context, params *ListPositionsParams, reqEditors ...RequestEditorFn) (*ListPositionsResponse, error)

	// GetReportsWithResponse Unified report snapshot (granularity selector)
	//
	// Unified convenience route (#4975) that consolidates the three singular report routes. Dispatches to the exact per-granularity cap (daily 50, weekly 100, monthly 200) and date window the legacy /api/v1/reports/{daily,weekly,monthly} routes use, so the response body is byte-identical to the matching legacy route for the same period. An ISO weekly period is a durable canonical snapshot; an explicit weekly from,to pair is an exact ephemeral range limited to 31 inclusive UTC days and never creates a persisted snapshot identity. A wider explicit range returns 400 invalid_query. The three legacy routes stay live. Also reachable via the MCP get_report selector.
	//
	// Returns a wrapper object for the known response body format(s).
	//
	// Corresponds with GET /api/v1/reports (the `GetReports` operationId).
	GetReportsWithResponse(ctx context.Context, params *GetReportsParams, reqEditors ...RequestEditorFn) (*GetReportsResponse, error)

	// GetDailyReportSnapshotWithResponse Daily report snapshot
	//
	// Returns a dated daily whale-activity report snapshot with source_range, snapshot.status, completeness, and reconciliation metadata. Report whale volume is local whale-alert activity volume, not provider lifetime trader volume.
	//
	// Returns a wrapper object for the known response body format(s).
	//
	// Corresponds with GET /api/v1/reports/daily (the `GetDailyReportSnapshot` operationId).
	GetDailyReportSnapshotWithResponse(ctx context.Context, params *GetDailyReportSnapshotParams, reqEditors ...RequestEditorFn) (*GetDailyReportSnapshotResponse, error)

	// GetMonthlyReportSnapshotWithResponse Monthly report snapshot
	//
	// Returns a UTC monthly whale-activity report snapshot with source_range, completeness, and reconciliation metadata.
	//
	// Returns a wrapper object for the known response body format(s).
	//
	// Corresponds with GET /api/v1/reports/monthly (the `GetMonthlyReportSnapshot` operationId).
	GetMonthlyReportSnapshotWithResponse(ctx context.Context, params *GetMonthlyReportSnapshotParams, reqEditors ...RequestEditorFn) (*GetMonthlyReportSnapshotResponse, error)

	// GetWeeklyReportSnapshotWithResponse Weekly report snapshot
	//
	// Returns a weekly whale-activity report snapshot. Pass an ISO YYYY-WW token for a durable canonical snapshot, or an exact from/to UTC range of at most 31 inclusive days for an ephemeral response. The response identifies closed ranges as final and current ranges as rolling.
	//
	// Returns a wrapper object for the known response body format(s).
	//
	// Corresponds with GET /api/v1/reports/weekly (the `GetWeeklyReportSnapshot` operationId).
	GetWeeklyReportSnapshotWithResponse(ctx context.Context, params *GetWeeklyReportSnapshotParams, reqEditors ...RequestEditorFn) (*GetWeeklyReportSnapshotResponse, error)

	// ListSportsEdgeObservationsWithResponse List observation-only sports-edge cohorts
	//
	// Deprecated since #16310: use GET /api/v1/sports/pre-game-side-observations, which serves the same body. This path stays live and answers with Deprecation and successor Link headers. Pro-tier. Measures three explicitly observation-only Polymarket sports cohorts without changing or feeding GET /api/v1/sports-edge-signals: wider_holder measures pre-game holder piles outside the funded route's exact raw signals admission, including recent-flow rows rejected by its event, bucket, or total caps; in_play admits provider-confirmed live games and fails closed when the provider live-board snapshot is stale or unavailable or holder/directional evidence is stale or unavailable; emerging_pile is an additive post-compute projection of wider_holder rows with finite sharp_pct in [0.75, 0.85), holder_scan_complete=true, and a kickoff after its pinned projection cutoff. emerging_pile overlaps wider_holder, remains attributed to that source terminal and denominator, and is not holder-arrival history. Every row carries observation_only=true, provider/holder freshness and completeness fields, and the response carries a required snapshot-wide operational/unknown-completeness degraded boolean plus an accountable per-sport funnel over a closed 25-value terminal-reason vocabulary. Omitted or blank category selects all 14 registered observation sport buckets, including Table Tennis and Pickleball; those two remain outside the funded sports projection. All category and all-sports cache scopes share one global observation provider-work admission, so distinct scope keys cannot multiply concurrent provider fanout. One absolute ~25s compute deadline covers cache coordination, board/universe and primary-signals membership reads, holder cache/provider work, price/metadata evaluation, and directional reads, leaving ~5s below the public router timeout for funnel reconciliation, cleanup, and response transport. A shared pre-holder stage deadline jointly bounds those database reads and board reconciliation to the smaller of 12s or half of the absolute budget remaining when that stage starts, preserving holder/post-holder opportunity; board reads use bounded fair waves and cold holder admission gives each represented canonical sport one row before any sport repeats. A request that finds its scope's refresh in flight waits for that snapshot, and a scope refresh waits for another scope's global provider-work admission while at least ~15s of the absolute deadline remain. Absolute deadline exhaustion before a usable cache, provider-work admission still held at that ~15s bound, an in-flight refresh that ends without publishing while another waiting request takes it over, or pre-holder stage expiry before a usable stored universe or primary-signals membership result returns 503 with error.reason=read_model_warming. Category-resolution SQL errors, Redis coordination failures, and primary-signals membership query failures return 500 internal_error instead. With no usable stored universe, a replica-side observation-universe refresh failure (a recovery conflict, its statement timeout, a busy pool, or a replica marked down) returns the same 503 read_model_warming; any other observation-universe SQL error, or an invalid compact result, still returns 500 internal_error. Once a usable universe exists, later operational or unknown-completeness board, holder, or price/metadata failures are retained as explicit terminal reasons in a degraded 200 response with degraded=true: 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 an attempted holder-provider failure, and holder_deadline_unavailable is holder-stage deadline exhaustion. Directional incompleteness is cohort-specific: a wider_holder row remains emitted with terminal wider_holder_emitted and directional_status=unavailable, while an in_play row fails closed with terminal in_play_directional_unavailable. capacity_limited records intentional bounded provider-work admission in the funnel and does not by itself set degraded=true. Healthy wider_holder requests may reuse a snapshot for ~180s; healthy emerging_pile requests may use the same snapshot. in_play never serves a cached observation snapshot older than ~30s, and degraded snapshots use ~30s. The ETag is a weak semantic validator over the stable page payload, including next_cursor page position; request-specific meta excluded; the opaque emerging_pile projection cutoff in next_cursor is not itself a validator input.
	//
	// Returns a wrapper object for the known response body format(s).
	//
	// Corresponds with GET /api/v1/sports-edge-observations (the `ListSportsEdgeObservations` operationId).
	//
	// Deprecated: this operation has been marked as deprecated upstream, but no `x-deprecated-reason` was set
	ListSportsEdgeObservationsWithResponse(ctx context.Context, params *ListSportsEdgeObservationsParams, reqEditors ...RequestEditorFn) (*ListSportsEdgeObservationsResponse, error)

	// ListSportsEdgeSignalsWithResponse List ranked pre-game sports-edge signals
	//
	// Deprecated since #16310: use GET /api/v1/sports/pre-game-sides, which serves the same body. This path stays live and answers with Deprecation and successor Link headers. Pro-tier. Ranked list of upcoming pre-game sports markets (moneyline + props) where graded (S/A/B) sharp money is piled on one side, each row carrying signal_created_at (the UTC time its immutable snapshot was computed), the piled side, its grade distribution, kickoff, piled-side Polymarket CLOB token id, and required shadow-only category_skill evidence. signal_created_at is not provider market creation time or request time. Eligibility and ranking remain the funded FLOW/HOLDER contract; category skill cannot change membership, order, rank, cursor, routing, or sizing. meta exposes explicit category source/model/status plus independently computed pre/post SHA-256 base-vector hashes that must match. Served from a shared server-side snapshot cache (healthy TTL ~180s, degraded ~30s) computed once per category at the maximum 48h horizon and filtered at request time; the cursor pins to that snapshot and a stale cursor is rejected. Polymarket only; source coverage is partial first-observed post-launch Goldsky primary taker BUY fills admitted by the canonical whale-alert thresholds, never reconstructed history. Deliberately not the editorial Pick of the Day ranker.
	//
	// Returns a wrapper object for the known response body format(s).
	//
	// Corresponds with GET /api/v1/sports-edge-signals (the `ListSportsEdgeSignals` operationId).
	//
	// Deprecated: this operation has been marked as deprecated upstream, but no `x-deprecated-reason` was set
	ListSportsEdgeSignalsWithResponse(ctx context.Context, params *ListSportsEdgeSignalsParams, reqEditors ...RequestEditorFn) (*ListSportsEdgeSignalsResponse, error)

	// ListPreGameSideObservationsWithResponse List observation-only pre-game side cohorts
	//
	// Canonical since #16310; GET /api/v1/sports-edge-observations is its deprecated alias and serves the same body. Pro-tier. Measures three explicitly observation-only Polymarket sports cohorts without changing or feeding GET /api/v1/sports/pre-game-sides: wider_holder measures pre-game holder piles outside the funded route's exact raw signals admission, including recent-flow rows rejected by its event, bucket, or total caps; in_play admits provider-confirmed live games and fails closed when the provider live-board snapshot is stale or unavailable or holder/directional evidence is stale or unavailable; emerging_pile is an additive post-compute projection of wider_holder rows with finite sharp_pct in [0.75, 0.85), holder_scan_complete=true, and a kickoff after its pinned projection cutoff. emerging_pile overlaps wider_holder, remains attributed to that source terminal and denominator, and is not holder-arrival history. Every row carries observation_only=true, provider/holder freshness and completeness fields, and the response carries a required snapshot-wide operational/unknown-completeness degraded boolean plus an accountable per-sport funnel over a closed 25-value terminal-reason vocabulary. Omitted or blank category selects all 14 registered observation sport buckets, including Table Tennis and Pickleball; those two remain outside the funded sports projection. All category and all-sports cache scopes share one global observation provider-work admission, so distinct scope keys cannot multiply concurrent provider fanout. One absolute ~25s compute deadline covers cache coordination, board/universe and primary-signals membership reads, holder cache/provider work, price/metadata evaluation, and directional reads, leaving ~5s below the public router timeout for funnel reconciliation, cleanup, and response transport. A shared pre-holder stage deadline jointly bounds those database reads and board reconciliation to the smaller of 12s or half of the absolute budget remaining when that stage starts, preserving holder/post-holder opportunity; board reads use bounded fair waves and cold holder admission gives each represented canonical sport one row before any sport repeats. A request that finds its scope's refresh in flight waits for that snapshot, and a scope refresh waits for another scope's global provider-work admission while at least ~15s of the absolute deadline remain. Absolute deadline exhaustion before a usable cache, provider-work admission still held at that ~15s bound, an in-flight refresh that ends without publishing while another waiting request takes it over, or pre-holder stage expiry before a usable stored universe or primary-signals membership result returns 503 with error.reason=read_model_warming. Category-resolution SQL errors, Redis coordination failures, and primary-signals membership query failures return 500 internal_error instead. With no usable stored universe, a replica-side observation-universe refresh failure (a recovery conflict, its statement timeout, a busy pool, or a replica marked down) returns the same 503 read_model_warming; any other observation-universe SQL error, or an invalid compact result, still returns 500 internal_error. Once a usable universe exists, later operational or unknown-completeness board, holder, or price/metadata failures are retained as explicit terminal reasons in a degraded 200 response with degraded=true: 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 an attempted holder-provider failure, and holder_deadline_unavailable is holder-stage deadline exhaustion. Directional incompleteness is cohort-specific: a wider_holder row remains emitted with terminal wider_holder_emitted and directional_status=unavailable, while an in_play row fails closed with terminal in_play_directional_unavailable. capacity_limited records intentional bounded provider-work admission in the funnel and does not by itself set degraded=true. Healthy wider_holder requests may reuse a snapshot for ~180s; healthy emerging_pile requests may use the same snapshot. in_play never serves a cached observation snapshot older than ~30s, and degraded snapshots use ~30s. The ETag is a weak semantic validator over the stable page payload, including next_cursor page position; request-specific meta excluded; the opaque emerging_pile projection cutoff in next_cursor is not itself a validator input. Rows carry the canonical field names side, backing_score and side_share; the older piled_side, conviction_score and smart_score keys carry the same values and stay on the wire.
	//
	// Returns a wrapper object for the known response body format(s).
	//
	// Corresponds with GET /api/v1/sports/pre-game-side-observations (the `ListPreGameSideObservations` operationId).
	ListPreGameSideObservationsWithResponse(ctx context.Context, params *ListPreGameSideObservationsParams, reqEditors ...RequestEditorFn) (*ListPreGameSideObservationsResponse, error)

	// ListPreGameSidesWithResponse List upcoming games ranked by the side profitable wallets hold
	//
	// Canonical since #16310; GET /api/v1/sports-edge-signals is its deprecated alias and serves the same body. Pro-tier. Ranked list of upcoming pre-game sports markets (moneyline + props) where graded (S/A/B) sharp money is piled on one side, each row carrying signal_created_at (the UTC time its immutable snapshot was computed), the piled side, its grade distribution, kickoff, piled-side Polymarket CLOB token id, and required shadow-only category_skill evidence. signal_created_at is not provider market creation time or request time. Eligibility and ranking remain the funded FLOW/HOLDER contract; category skill cannot change membership, order, rank, cursor, routing, or sizing. meta exposes explicit category source/model/status plus independently computed pre/post SHA-256 base-vector hashes that must match. Served from a shared server-side snapshot cache (healthy TTL ~180s, degraded ~30s) computed once per category at the maximum 48h horizon and filtered at request time; the cursor pins to that snapshot and a stale cursor is rejected. Polymarket only; source coverage is partial first-observed post-launch Goldsky primary taker BUY fills admitted by the canonical whale-alert thresholds, never reconstructed history. Deliberately not the editorial Pick of the Day ranker. Rows carry the canonical field names side, ranked_at, backing_score and side_share; the older piled_side, signal_created_at, conviction_score and smart_score keys carry the same values and stay on the wire.
	//
	// Returns a wrapper object for the known response body format(s).
	//
	// Corresponds with GET /api/v1/sports/pre-game-sides (the `ListPreGameSides` operationId).
	ListPreGameSidesWithResponse(ctx context.Context, params *ListPreGameSidesParams, reqEditors ...RequestEditorFn) (*ListPreGameSidesResponse, error)

	// GetStreamWithResponse Resumable real-time event stream (SSE)
	//
	// Server-Sent Events stream of the live feed envelopes the platform already broadcasts (whale-trade pulses and other public/Pro feed events). Forwards the same backend-owned envelope shape as the internal feed; no provider data is recomputed. Authenticated via the oxi_sk Bearer key like every other /api/v1 endpoint, and limited to a small number of concurrent connections per API key and a cluster-wide ceiling across all keys (HTTP 429 with Retry-After when either cap is exceeded; HTTP 503 with Retry-After if a required Redis service is briefly unavailable). Each delivered frame carries an SSE id from one cluster-shared sequence that remains valid across backend replicas and process restarts. Reconnect with the Last-Event-ID header (or the last_event_id / seq query fallback) to replay the missed window before resuming live. When the requested resume point is older than the retained window, ahead of the current sequence, separated from live delivery by an uncovered gap, or the server's sequence counter restarts mid-stream (a completeness.status of truncated, lagged, or reset), the stream emits a resync marker event (event: resync) instead of silently skipping frames. Idle connections receive periodic ': keep-alive' comment lines. This is a long-lived response: keep the connection open and read frames as they arrive. Authorization is re-checked for as long as the stream is open: every 30 seconds the server re-resolves the key the stream was opened with, so a key that is revoked, expired or rotated, or an account that is deleted, locked or no longer subscribed, ends the stream within 40 seconds (30 seconds plus the credential cache's 10-second bound) with one terminal 'event: error' frame and then closes the connection. The frame's JSON is { type: 'error', error: <the same error object a reconnect is answered with: code, message, doc_url, reason, retry_at>, retry: <boolean> }; retry is false for every credential and account refusal (a reconnect is refused with the same 401, 402, 403 or 423), and true only when the credential store stopped answering (code database_unavailable, after 90 seconds without a confirmed check), in which case reconnect after the error's retry_at with Last-Event-ID set to the frame's id to resume.
	//
	// Returns a wrapper object for the known response body format(s).
	//
	// Corresponds with GET /api/v1/stream (the `GetStream` operationId).
	GetStreamWithResponse(ctx context.Context, params *GetStreamParams, reqEditors ...RequestEditorFn) (*GetStreamResponse, error)

	// ListSuspiciousTradesWithResponse Get suspicious trades
	//
	// Stored trades whose recorded suspicion score meets the live flag threshold. Evidence contains the scorer's stored signals. Cursor-paginated by suspicion score. mode=live (default) uses fresh cached pages; mode=stable pins pagination to one published scoring generation and returns cursor_expired when scores or filters change. Canonical since 2026-09-23; GET /api/v1/insider-radar is its deprecated alias.
	//
	// Returns a wrapper object for the known response body format(s).
	//
	// Corresponds with GET /api/v1/suspicious-trades (the `ListSuspiciousTrades` operationId).
	ListSuspiciousTradesWithResponse(ctx context.Context, params *ListSuspiciousTradesParams, reqEditors ...RequestEditorFn) (*ListSuspiciousTradesResponse, error)

	// GetSuspiciousTradeWithResponse Get suspicious trade by ID
	//
	// Returns one suspicious trade by raw whale_alerts.id or the rf_-prefixed id emitted by list responses. Canonical since 2026-09-23; GET /api/v1/insider-radar/{id} is its deprecated alias and keeps answering object: radar_flag.
	//
	// Returns a wrapper object for the known response body format(s).
	//
	// Corresponds with GET /api/v1/suspicious-trades/{id} (the `GetSuspiciousTrade` operationId).
	GetSuspiciousTradeWithResponse(ctx context.Context, id string, params *GetSuspiciousTradeParams, reqEditors ...RequestEditorFn) (*GetSuspiciousTradeResponse, error)

	// GetTraderWithResponse Get trader
	//
	// Returns a trader's grade (S through F; ranked about 95% by realized profit, with calibration, track record, and consistency as a tie-breaker and proven-trader guardrails), P&L, win rate, and optional strategy/category data. The path accepts either an Ethereum wallet address, a known trader username, or a trd_-prefixed trader ID emitted by this API. A wallet address this API does not track yet returns 200 with sync_status "unknown" instead of 404, so it can be polled. A value that is not a wallet address and matches no username or trader ID this API knows returns 404 not_found with error.param address; it is never echoed back as a trader address. The additive `pnl.exact.realized` and `stats.exact.total_volume` fields carry decimal strings from verified source atoms with unit, scale and basis metadata; parse them with decimal-safe arithmetic and keep the existing numeric twins for display.
	//
	// Returns a wrapper object for the known response body format(s).
	//
	// Corresponds with GET /api/v1/trader/{address} (the `GetTrader` operationId).
	GetTraderWithResponse(ctx context.Context, address string, params *GetTraderParams, reqEditors ...RequestEditorFn) (*GetTraderResponse, error)

	// GetTraderCategoryRecordsWithResponse Get trader category win records
	//
	// Returns one wallet's win record in every canonical category it has a settled market in: wins, decided (wins plus losses) and the rate, per category, busiest category first. These are the same counts the Pick of the Day holder chips carry. The Esports record also carries games: the wallet's record in each esports title it has a settled market in (LoL, CS2, Dota 2, Valorant, ...), the same per-game record the holder chips and GET /api/v1/market/{condition_id}/holders name in category_win_rate_game, with the same counts, floor and status rule; the Esports row itself stays the whole bucket, which is what a chip falls back to when a game record is thin. The basis is every settled market at any position size, which is NOT the basis of category_strengths on GET /api/v1/trader/{address}?expand=categories: that breakdown keeps the 20 USD notional floor and the entry-price rule its ranks depend on, so the two legitimately differ, in both directions. Measured on production 2026-09-22 over the 122,497 wallet-category pairs with at least 20 decided markets on both bases: the floored rate was higher in 56.5% of pairs, lower in 34.5% and equal in 9.0%, median +0.6 points, p10 -4.6, p90 +9.8, and 14.0% of pairs differ by 10 points or more. Neither rate corrects the other. The difference is not only small positions: on a 1-in-250 wallet sample the same day, admitted markets won 56.6% while markets dropped by the notional floor alone won 45.2% and markets dropped by the entry-price rule alone won 48.7%. The two tables also run on different clocks, this one rebuilt daily and that breakdown updated incrementally, so a same-day read can differ on timing alone. A category or game with fewer than min_decided_for_win_rate decided markets keeps its counts and returns win_rate null with status not_enough_data, so a caller can apply its own sample rule. A category the wallet has no settled market in is omitted entirely, and so is a game: an absent entry means no record, never a 0% record. A resolved trader with no settled market returns an empty records array (HTTP 200); an unknown address returns 404.
	//
	// Returns a wrapper object for the known response body format(s).
	//
	// Corresponds with GET /api/v1/trader/{address}/categories (the `GetTraderCategoryRecords` operationId).
	GetTraderCategoryRecordsWithResponse(ctx context.Context, address string, params *GetTraderCategoryRecordsParams, reqEditors ...RequestEditorFn) (*GetTraderCategoryRecordsResponse, error)

	// GetTraderContextWithResponse Get trader context (JSON)
	//
	// Returns a single structured context object for one trader: the full trader profile (same shape as GET /api/v1/trader/{address}) plus a position_summary (sync coverage and realized/unrealized P&L rollups, with an as_of open-position freshness clock), the data_as_of freshness timestamp (the open-position data's latest /positions snapshot, else last completed sync; the snapshot advances only open positions, so resolved counts and win rate still date to the last full sync; native realized P&L follows its accounting snapshot), and a freshness_note describing the point-in-time snapshot semantics. The path accepts an Ethereum wallet address (0x...), a known trader username, or a trd_-prefixed trader ID emitted by this API. position_summary is omitted when the trader is not in the local database or native net economics is unavailable; realized fields remain numeric when present; a wallet address this API does not track yet returns 200 with sync_status 'unknown' on the nested trader (no 404), while a value that is not a wallet address and matches no username or trader ID this API knows returns 404 not_found with error.param address. Append .md to the path for the Markdown rendering.
	//
	// Returns a wrapper object for the known response body format(s).
	//
	// Corresponds with GET /api/v1/trader/{address}/context (the `GetTraderContext` operationId).
	GetTraderContextWithResponse(ctx context.Context, address string, params *GetTraderContextParams, reqEditors ...RequestEditorFn) (*GetTraderContextResponse, error)

	// GetTraderContextMarkdownWithResponse Get trader context (Markdown)
	//
	// Returns a single human- and LLM-readable Markdown briefing for one trader: identity, grade, P&L, position coverage, and freshness. The path accepts an Ethereum wallet address (0x...), a known trader username, or a trd_-prefixed trader ID emitted by this API. A wallet address this API does not track yet still returns 200 with a degraded 'not yet synced' document (no 404). A value that is not a wallet address and matches no username or trader ID this API knows returns 404 not_found with error.param address, as the JSON error envelope. The Markdown variant does not emit an ETag and does not support conditional requests; use the JSON variant (drop the .md suffix) for ETag/If-None-Match handling.
	//
	// Returns a wrapper object for the known response body format(s).
	//
	// Corresponds with GET /api/v1/trader/{address}/context.md (the `GetTraderContextMarkdown` operationId).
	GetTraderContextMarkdownWithResponse(ctx context.Context, address string, params *GetTraderContextMarkdownParams, reqEditors ...RequestEditorFn) (*GetTraderContextMarkdownResponse, error)

	// GetTraderExportSnapshotWithResponse Trader export snapshot metadata
	//
	// Returns export source-range, completeness, volume reconciliation, row-count estimate, and large-export policy for one trader. To download the full dataset programmatically, POST to this same path to submit an async export job (json | ndjson | csv), then poll the status route and follow the download route once ready.
	//
	// Returns a wrapper object for the known response body format(s).
	//
	// Corresponds with GET /api/v1/trader/{address}/export (the `GetTraderExportSnapshot` operationId).
	GetTraderExportSnapshotWithResponse(ctx context.Context, address string, params *GetTraderExportSnapshotParams, reqEditors ...RequestEditorFn) (*GetTraderExportSnapshotResponse, error)

	// SubmitTraderExportWithResponse Submit a trader dataset export job
	//
	// Queues an async export of the trader's full dataset in the requested format (json default, ndjson, or csv) and returns the job resource. Poll the status route at poll_after_s until terminal is true, then follow the download route while status is 'ready' (until expires_at, 24 hours from submit). Reuse: without fresh=true, a live job for the same trader and format inside its retention window (queued, running, reconcile_required or ready) is returned with 200 instead of a new one, except a job its owner asked to cancel, which is never reused; its data_as_of says what its file is a snapshot of. With fresh=true only a queued job (which has not started reading) is reused; a running, reconciling or ready job is left alone and a new job is reserved, which consumes quota like any new job. Both decisions run under one per-account lock, so two concurrent submits cannot both reserve when one would have reused the other. Quotas are the per-user daily and per-address hourly export caps, keyed on the API key owner so an API key never widens its owner's quota. New full exports select one database read generation before delivery. JSON and NDJSON add export_metadata.generation (id, selected_at, consistency=repeatable_read, source_watermarks for positions, native P&L, categories and all matching trades), position_generation, provider_observations (provider values and observation/revision metadata), category_data_as_of, pnl_date_from/to, pnl_rows, pnl_row_limit (3650), markets_rows, markets_row_limit (50000), summary_basis and trades_basis. Summary counts cover all stored markets; the markets section retains its existing latest-activity 50000-row limit and P&L its earliest-3650-days limit. These are database consistency and section coverage facts, not a claim that providers observed every section simultaneously. CSV appends export_generation, export_selected_at and export_consistency columns. Downloaded objects also expose x-amz-meta-export-generation, x-amz-meta-export-selected-at, x-amz-meta-export-consistency, x-amz-meta-export-trades and x-amz-meta-export-provenance headers, including empty CSV files. Historical artifacts remain unchanged. Select CSV columns by name; JSON/NDJSON readers may ignore the additive fields. A read exceeding 600 seconds or an uncompressed artifact exceeding 2 GiB fails without publishing a partial file.
	//
	// Returns a wrapper object for the known response body format(s).
	//
	// Corresponds with POST /api/v1/trader/{address}/export (the `SubmitTraderExport` operationId).
	SubmitTraderExportWithResponse(ctx context.Context, address string, params *SubmitTraderExportParams, reqEditors ...RequestEditorFn) (*SubmitTraderExportResponse, error)

	// CancelTraderExportWithResponse Cancel a trader export job
	//
	// Cancels a submitted export and returns the job resource, the same shape the status route returns. A queued job reads cancelled at once and no worker will start it. A running job reads cancel_requested until the worker reaches its next safe point, then cancelled: the worker checks every 5 seconds while it reads the snapshot and between upload parts, and once more at the last point before the file is published; a storage request already in flight finishes first (each is bounded at 120 seconds), and a partial upload is discarded. If the worker itself stops first, the job reads cancelled after its 30-minute lease lapses, at the next hourly cleanup. A job a cancel can no longer reach is returned unchanged with 200: once its upload is being completed it finishes as ready (or reconcile_required, then ready or failed), and ready, failed, expired and cancelled jobs are terminal. A cancel never deletes a ready file; compare status before and after. Repeating the request is safe: it converges on the same state and never repeats a transition, so a client that lost the answer can send it again or read the status route. While terminal is false, poll the status route after poll_after_s. Quota is unchanged: the submit's reservation keeps counting toward the per-user daily and per-address hourly export caps for its full window, as a failed export's does, and a job its owner asked to cancel is never reused by a later submit, which reserves a new job. Webhook endpoints subscribed to export_job_cancelled receive it when the job reaches cancelled. An unknown job id, or a job owned by another account or submitted for another trader, answers 404 exactly as the status route does.
	//
	// Returns a wrapper object for the known response body format(s).
	//
	// Corresponds with POST /api/v1/trader/{address}/export/cancel (the `CancelTraderExport` operationId).
	CancelTraderExportWithResponse(ctx context.Context, address string, params *CancelTraderExportParams, reqEditors ...RequestEditorFn) (*CancelTraderExportResponse, error)

	// DownloadTraderExportWithResponse Download a finished trader export
	//
	// Redirects (302) to a short-lived presigned URL for the finished export file while the job status is 'ready' and expires_at has not passed. The file is gzip-compressed and served with the format's Content-Type (application/json, application/x-ndjson, or text/csv). Returns 400 while the job is queued, running, cancel_requested or reconciling (poll the status route first) and for a failed or cancelled job (submit a new export); returns 410 with error.code not_found and error.reason export_expired once the retention window has passed or the file has been retired, so the redirect never points at a file that is gone.
	//
	// Returns a wrapper object for the known response body format(s).
	//
	// Corresponds with GET /api/v1/trader/{address}/export/download (the `DownloadTraderExport` operationId).
	DownloadTraderExportWithResponse(ctx context.Context, address string, params *DownloadTraderExportParams, reqEditors ...RequestEditorFn) (*DownloadTraderExportResponse, error)

	// GetTraderExportStatusWithResponse Poll a trader export job
	//
	// Returns the job resource for a submitted export: status (queued | running | cancel_requested | reconcile_required | ready | failed | expired | cancelled), terminal, next_action and poll_after_s, the lifecycle timestamps, the retention window (expires_at) and, once the file is written, data_as_of and the artifact identity. A ready job past expires_at reads expired; a queued or reconciling job past expires_at reads failed. A running job its owner cancelled reads cancel_requested until the worker stops, then cancelled. failed, cancelled and expired jobs stay readable for 48 hours, then 404.
	//
	// Returns a wrapper object for the known response body format(s).
	//
	// Corresponds with GET /api/v1/trader/{address}/export/status (the `GetTraderExportStatus` operationId).
	GetTraderExportStatusWithResponse(ctx context.Context, address string, params *GetTraderExportStatusParams, reqEditors ...RequestEditorFn) (*GetTraderExportStatusResponse, error)

	// GetTraderGradeAtWithResponse Get a trader grade proven visible at a past instant
	//
	// Reads one trader's recorded grade at as_of from prospective visibility evidence. Before the first recorded observation, after deletion, or during a grade-transition gap, status is unknown and grade is null; a recorded ungraded trader instead has status ungraded. available_from is the first proven observation for this trader, not a claim that earlier grades can be reconstructed. observed_at is when the grade writer began the transition and published_by is the later confirmation that the row was committed, not an exact commit time. Older observations have null model_version, model_build_sha and source_observed_by; do not substitute a current grade or a dated ranking row. The requested event time, publication bounds and model provenance are separate. Use a grade only when status is graded. This is additive; the current-grade trader and leaderboard operations do not change.
	//
	// Returns a wrapper object for the known response body format(s).
	//
	// Corresponds with GET /api/v1/trader/{address}/grade-at (the `GetTraderGradeAt` operationId).
	GetTraderGradeAtWithResponse(ctx context.Context, address string, params *GetTraderGradeAtParams, reqEditors ...RequestEditorFn) (*GetTraderGradeAtResponse, error)

	// GetTraderPnlWithResponse Get trader P&L time series
	//
	// Returns a trader's daily P&L time series and pre-derived stats from the precomputed daily_pnl read model: entries (daily cumulative P&L), period stats (all/90d/30d/7d), monthly aggregation, per-year totals, and the drawdown series. Reads the refreshed read model, not a per-request equity replay. A resolved trader with no daily P&L returns an empty structured object (HTTP 200); an unknown address returns 404. Optional from/to and sections bound what comes back: from/to clip the two daily series (entries, drawdown) to an inclusive UTC date window, and sections names which of the five sections the body carries. A request that sends none of the three receives the whole object exactly as before, down to the ETag. A body built with any of them carries data.view, which names the bounds, the sections applied, the size of the full series and the last daily point before the window; a section the request excluded is absent from data, not null or empty. stats, monthly and year_totals keep their full-period definitions whatever the window says, so an economic value never changes meaning because a chart asked for seven days.
	//
	// Returns a wrapper object for the known response body format(s).
	//
	// Corresponds with GET /api/v1/trader/{address}/pnl (the `GetTraderPnl` operationId).
	GetTraderPnlWithResponse(ctx context.Context, address string, params *GetTraderPnlParams, reqEditors ...RequestEditorFn) (*GetTraderPnlResponse, error)

	// GetPositionTimelineWithResponse Get a trader's position timeline for one market
	//
	// Returns stored Polymarket fills for one tracked trader in one market, newest first, with outcome-specific running_amount and running_avg_price including earlier stored fills before pagination. The {address} segment accepts the same identity shapes as the plural alias: wallet, username, trd_-prefixed trader id, bare integer traders.id, or @username, resolved with precedence @username -> wallet -> trd_ -> integer -> username. A leading @ resolves the rest as a username only, which is how to reach an all-digit username that the integer rule reads as an id. Only HOT and WARM traders are served; others return 404. The cumulative buy-weighted fill average is unchanged by sells. Split, merge, redemption and neg-risk activity are excluded; totals are not complete holdings or provider current-position avgPrice. Cursor-paginated; values stay stable across page sizes/cursors for unchanged source history.
	//
	// Returns a wrapper object for the known response body format(s).
	//
	// Corresponds with GET /api/v1/trader/{address}/position-timeline (the `GetPositionTimeline` operationId).
	GetPositionTimelineWithResponse(ctx context.Context, address string, params *GetPositionTimelineParams, reqEditors ...RequestEditorFn) (*GetPositionTimelineResponse, error)

	// BatchGetTradersWithBodyWithResponse Batch traders
	//
	// Returns traders for 1-25 wallet addresses or known usernames. Results preserve request order, duplicate inputs return duplicate rows, and each item is charged one batch item unit before execution. A wallet address this API does not track yet returns data with sync_status "unknown", matching the single trader endpoint. A username, trd_ id or numeric trader id that resolves to no trader is a per-item not_found error with error.param "traders", never an ok row keyed on the input.
	//
	// Takes any type of body and a specified content type, and returns a wrapper object for the known response body format(s).
	//
	// Corresponds with POST /api/v1/traders/batch (the `BatchGetTraders` operationId).
	BatchGetTradersWithBodyWithResponse(ctx context.Context, params *BatchGetTradersParams, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*BatchGetTradersResponse, error)

	// BatchGetTradersWithResponse Batch traders
	//
	// Returns traders for 1-25 wallet addresses or known usernames. Results preserve request order, duplicate inputs return duplicate rows, and each item is charged one batch item unit before execution. A wallet address this API does not track yet returns data with sync_status "unknown", matching the single trader endpoint. A username, trd_ id or numeric trader id that resolves to no trader is a per-item not_found error with error.param "traders", never an ok row keyed on the input.
	//
	// Takes a body of the `application/json` content type, and returns a wrapper object for the known response body format(s).
	//
	// Corresponds with POST /api/v1/traders/batch (the `BatchGetTraders` operationId).
	BatchGetTradersWithResponse(ctx context.Context, params *BatchGetTradersParams, body BatchGetTradersJSONRequestBody, reqEditors ...RequestEditorFn) (*BatchGetTradersResponse, error)

	// GetPositionTimelineByIdWithResponse Get a trader's position timeline (unified identity resolver)
	//
	// Unified trader-timeline route (#4975). {trader} accepts all five identity shapes - 0x... wallet, username, trd_-prefixed trader id, bare integer id, and @username (a username lookup only, for all-digit usernames) - resolved by the single shared trader-identity resolver. Returns stored Polymarket fills for one tracked trader in one market, newest first, with server-computed running_amount and running_avg_price. Only HOT and WARM tier traders are tracked; other traders return 404. Response payload matches the singular GET /api/v1/trader/{address}/position-timeline route for the same (trader, market), except for the per-request meta.request_id. The prior integer-id-only variant is preserved: the same path now accepts every identity shape.
	//
	// Returns a wrapper object for the known response body format(s).
	//
	// Corresponds with GET /api/v1/traders/{trader}/position-timeline (the `GetPositionTimelineById` operationId).
	GetPositionTimelineByIdWithResponse(ctx context.Context, trader string, params *GetPositionTimelineByIdParams, reqEditors ...RequestEditorFn) (*GetPositionTimelineByIdResponse, error)

	// GetUsageWithResponse Inspect current API usage without spending primary request quota
	//
	// Returns the authenticated caller sliding-window request budget, UTC-day usage and monthly quota. This control-plane endpoint remains available for a valid credential after paid data access lapses and does not increment the primary Redis rate-limit counter, monthly quota or API usage table; it shares a separate 100 reads/minute per-user inspection bucket with GET /api/v1/me. UTC-day totals use finalized quarter-hour rollups plus the disjoint raw interval through request time; unavailable rollup progress returns an error.
	//
	// Returns a wrapper object for the known response body format(s).
	//
	// Corresponds with GET /api/v1/usage (the `GetUsage` operationId).
	GetUsageWithResponse(ctx context.Context, params *GetUsageParams, reqEditors ...RequestEditorFn) (*GetUsageResponse, error)

	// ListWebhooksWithResponse List builder webhook destinations
	//
	// Returns webhook destinations owned by the authenticated API key user. Deleted endpoints are omitted; an endpoint paused with PATCH or disabled after consecutive failures is listed with status disabled. Subscribable event_types and their payload shapes are described by GET /api/v1/webhooks/events. Export lifecycle event types (export_job_ready, export_job_failed, export_job_expired, export_job_cancelled) are delivered only to the API-key account that created the export and contain no download URL; use the authorized export status and download routes. Four subscribable event types are Pro-only and only deliver to API keys on an active Pro subscription. whale_trades_inserted is one of them, gated by the same SubscriberScope::InsiderOnly mechanism as the other three (each type carries its own LiveEventContract entry; they share the scope value). The other three: wallet_grade_changed (data: wallet, trader_id, old_grade, new_grade, direction (upgrade|downgrade), skill_index, final_score, date) fires on a Pass-2 grade transition; insider_radar_flag_raised (data: trade_id, wallet, trader_id, condition_id, suspicion_score, track, side (yes|no), size, price) fires the first time a trade's suspicion score crosses the radar flag threshold; sharp_money_flow_detected (data: condition_id, net_flow_usd, abs_net_flow_usd, dominant_side (yes|no), grade_floor (S|A|B|C|D|F), whale_trade_count, window) fires when a scheduled scanner detects ranked-trader net flow crossing a threshold (up or down) on a market, and smart_money_flow_detected is its deprecated spelling of the same event. live_sports_updated (data: event_slug, game_id, league, version, changed, observed_at, published_at, status, period, clock, live, ended, scores, series_format, snapshot_url) is ungated and fires as a bounded per-game pulse when a live game's scores, status, period or live/ended state moves: at most one delivery per game per 20 seconds, with a live or ended transition exempt from that interval, and the game clock alone never firing one. version is a durable per-game ordinal, changed lists the material fields that moved since that game's previous delivered pulse, and snapshot_url is where to re-read the whole game after a gap.
	//
	// Returns a wrapper object for the known response body format(s).
	//
	// Corresponds with GET /api/v1/webhooks (the `ListWebhooks` operationId).
	ListWebhooksWithResponse(ctx context.Context, params *ListWebhooksParams, reqEditors ...RequestEditorFn) (*ListWebhooksResponse, error)

	// CreateWebhookWithBodyWithResponse Create a builder webhook destination
	//
	// Creates a pending HTTPS webhook destination. The response includes one-time signing_secret and verification.token values. Deliveries are not sent until the endpoint is verified, and verification requires the destination to answer 2xx to a signed webhook.verification challenge (see POST /api/v1/webhooks/{id}/verify). The subscribable event_types and their data payload shapes are described by GET /api/v1/webhooks/events; the per-endpoint delivery log is GET /api/v1/webhooks/{id}/deliveries. Export lifecycle event types (export_job_ready, export_job_failed, export_job_expired, export_job_cancelled) are delivered only to the API-key account that created the export and contain no download URL; use the authorized export status and download routes. Four subscribable event types are Pro-only and only deliver to API keys on an active Pro subscription. whale_trades_inserted is one of them, gated by the same SubscriberScope::InsiderOnly mechanism as the other three (each type carries its own LiveEventContract entry; they share the scope value). The other three: wallet_grade_changed (data: wallet, trader_id, old_grade, new_grade, direction (upgrade|downgrade), skill_index, final_score, date) fires on a Pass-2 grade transition; insider_radar_flag_raised (data: trade_id, wallet, trader_id, condition_id, suspicion_score, track, side (yes|no), size, price) fires the first time a trade's suspicion score crosses the radar flag threshold; sharp_money_flow_detected (data: condition_id, net_flow_usd, abs_net_flow_usd, dominant_side (yes|no), grade_floor (S|A|B|C|D|F), whale_trade_count, window) fires when a scheduled scanner detects ranked-trader net flow crossing a threshold (up or down) on a market, and smart_money_flow_detected is its deprecated spelling of the same event. live_sports_updated (data: event_slug, game_id, league, version, changed, observed_at, published_at, status, period, clock, live, ended, scores, series_format, snapshot_url) is ungated and fires as a bounded per-game pulse when a live game's scores, status, period or live/ended state moves: at most one delivery per game per 20 seconds, with a live or ended transition exempt from that interval, and the game clock alone never firing one. version is a durable per-game ordinal, changed lists the material fields that moved since that game's previous delivered pulse, and snapshot_url is where to re-read the whole game after a gap. Delivery signing: each delivery request carries one or more HMAC-SHA256 signatures in the x-0xinsider-signature header as comma-separated v1=<hex> candidates. During staged rotation, the current and previous signing secrets are both signed for one hour; accept any valid candidate. Each candidate is HMAC-SHA256(signing_secret, "<timestamp>.<raw_request_body>"). The signed <timestamp> is sent separately as x-0xinsider-timestamp (unix seconds). To verify a delivery: read x-0xinsider-timestamp, reject it if it differs from the current time by more than 300 seconds, recompute each candidate over "<timestamp>.<raw_body>" with the active secrets, and compare using a constant-time comparison. Each delivery also carries x-0xinsider-event-id, x-0xinsider-event-type, x-0xinsider-delivery-id, and x-0xinsider-delivery-attempt headers. Retries and disabling: ordinary transient delivery failures use stable jitter between half and the existing 60, 120, 240, 480, 960, 1920 and 3600-second upper bounds (retry_policy.retry_horizon_seconds = 7380); on 408, 429, or 5xx, a valid Retry-After delta-seconds or HTTP-date replaces that one wait and is clamped to 60–3600 seconds, while missing, malformed, past, or non-retryable-response hints use the ordinary schedule. The delivery still has eight attempts (retry_policy.max_attempts), and an eighth failure becomes dead_letter. The delivery log exposes retry_schedule_reason and next_attempt_at so a receiver can see the active schedule. Separately, an endpoint is disabled after 8 consecutive failed attempts across all of its deliveries (retry_policy.disable_after_consecutive_failures); any successful attempt resets that count, so a busy endpoint that goes down can be disabled in minutes, well before any single delivery exhausts its retries. Disabling dead-letters every delivery still queued for the endpoint and emails the account owner, within about an hour, with each disabled endpoint and its last failed response. Re-enable it with PATCH /api/v1/webhooks/{id} {"enabled": true}; re-enabling does not resend dead-lettered deliveries. Resend each one with POST /api/v1/webhooks/{id}/deliveries/{delivery_id}/redeliver, or catch up with GET /api/v1/events/feed/since from the last event you processed. GET /api/v1/webhooks/{id}/deliveries shows next_attempt_at and retry_schedule_reason for a delivery still waiting to retry.
	//
	// Takes any type of body and a specified content type, and returns a wrapper object for the known response body format(s).
	//
	// Corresponds with POST /api/v1/webhooks (the `CreateWebhook` operationId).
	CreateWebhookWithBodyWithResponse(ctx context.Context, params *CreateWebhookParams, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*CreateWebhookResponse, error)

	// CreateWebhookWithResponse Create a builder webhook destination
	//
	// Creates a pending HTTPS webhook destination. The response includes one-time signing_secret and verification.token values. Deliveries are not sent until the endpoint is verified, and verification requires the destination to answer 2xx to a signed webhook.verification challenge (see POST /api/v1/webhooks/{id}/verify). The subscribable event_types and their data payload shapes are described by GET /api/v1/webhooks/events; the per-endpoint delivery log is GET /api/v1/webhooks/{id}/deliveries. Export lifecycle event types (export_job_ready, export_job_failed, export_job_expired, export_job_cancelled) are delivered only to the API-key account that created the export and contain no download URL; use the authorized export status and download routes. Four subscribable event types are Pro-only and only deliver to API keys on an active Pro subscription. whale_trades_inserted is one of them, gated by the same SubscriberScope::InsiderOnly mechanism as the other three (each type carries its own LiveEventContract entry; they share the scope value). The other three: wallet_grade_changed (data: wallet, trader_id, old_grade, new_grade, direction (upgrade|downgrade), skill_index, final_score, date) fires on a Pass-2 grade transition; insider_radar_flag_raised (data: trade_id, wallet, trader_id, condition_id, suspicion_score, track, side (yes|no), size, price) fires the first time a trade's suspicion score crosses the radar flag threshold; sharp_money_flow_detected (data: condition_id, net_flow_usd, abs_net_flow_usd, dominant_side (yes|no), grade_floor (S|A|B|C|D|F), whale_trade_count, window) fires when a scheduled scanner detects ranked-trader net flow crossing a threshold (up or down) on a market, and smart_money_flow_detected is its deprecated spelling of the same event. live_sports_updated (data: event_slug, game_id, league, version, changed, observed_at, published_at, status, period, clock, live, ended, scores, series_format, snapshot_url) is ungated and fires as a bounded per-game pulse when a live game's scores, status, period or live/ended state moves: at most one delivery per game per 20 seconds, with a live or ended transition exempt from that interval, and the game clock alone never firing one. version is a durable per-game ordinal, changed lists the material fields that moved since that game's previous delivered pulse, and snapshot_url is where to re-read the whole game after a gap. Delivery signing: each delivery request carries one or more HMAC-SHA256 signatures in the x-0xinsider-signature header as comma-separated v1=<hex> candidates. During staged rotation, the current and previous signing secrets are both signed for one hour; accept any valid candidate. Each candidate is HMAC-SHA256(signing_secret, "<timestamp>.<raw_request_body>"). The signed <timestamp> is sent separately as x-0xinsider-timestamp (unix seconds). To verify a delivery: read x-0xinsider-timestamp, reject it if it differs from the current time by more than 300 seconds, recompute each candidate over "<timestamp>.<raw_body>" with the active secrets, and compare using a constant-time comparison. Each delivery also carries x-0xinsider-event-id, x-0xinsider-event-type, x-0xinsider-delivery-id, and x-0xinsider-delivery-attempt headers. Retries and disabling: ordinary transient delivery failures use stable jitter between half and the existing 60, 120, 240, 480, 960, 1920 and 3600-second upper bounds (retry_policy.retry_horizon_seconds = 7380); on 408, 429, or 5xx, a valid Retry-After delta-seconds or HTTP-date replaces that one wait and is clamped to 60–3600 seconds, while missing, malformed, past, or non-retryable-response hints use the ordinary schedule. The delivery still has eight attempts (retry_policy.max_attempts), and an eighth failure becomes dead_letter. The delivery log exposes retry_schedule_reason and next_attempt_at so a receiver can see the active schedule. Separately, an endpoint is disabled after 8 consecutive failed attempts across all of its deliveries (retry_policy.disable_after_consecutive_failures); any successful attempt resets that count, so a busy endpoint that goes down can be disabled in minutes, well before any single delivery exhausts its retries. Disabling dead-letters every delivery still queued for the endpoint and emails the account owner, within about an hour, with each disabled endpoint and its last failed response. Re-enable it with PATCH /api/v1/webhooks/{id} {"enabled": true}; re-enabling does not resend dead-lettered deliveries. Resend each one with POST /api/v1/webhooks/{id}/deliveries/{delivery_id}/redeliver, or catch up with GET /api/v1/events/feed/since from the last event you processed. GET /api/v1/webhooks/{id}/deliveries shows next_attempt_at and retry_schedule_reason for a delivery still waiting to retry.
	//
	// Takes a body of the `application/json` content type, and returns a wrapper object for the known response body format(s).
	//
	// Corresponds with POST /api/v1/webhooks (the `CreateWebhook` operationId).
	CreateWebhookWithResponse(ctx context.Context, params *CreateWebhookParams, body CreateWebhookJSONRequestBody, reqEditors ...RequestEditorFn) (*CreateWebhookResponse, error)

	// ListWebhookEventsWithResponse List webhook event catalog
	//
	// Self-describing catalog of every webhook event type: its description, data payload shape, and whether it is active (has a firing producer) or dormant (subscribable but not yet delivered; no event type is dormant today). The catalog is identical for every authenticated key and exposes no owner-scoped data. 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) appear in the catalog but 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 and download routes.
	//
	// Returns a wrapper object for the known response body format(s).
	//
	// Corresponds with GET /api/v1/webhooks/events (the `ListWebhookEvents` operationId).
	ListWebhookEventsWithResponse(ctx context.Context, params *ListWebhookEventsParams, reqEditors ...RequestEditorFn) (*ListWebhookEventsResponse, error)

	// DeleteWebhookWithResponse Disable a builder webhook destination
	//
	// Soft-deletes a webhook destination owned by the authenticated API key user. Existing delivery audit rows remain retained.
	//
	// Returns a wrapper object for the known response body format(s).
	//
	// Corresponds with DELETE /api/v1/webhooks/{id} (the `DeleteWebhook` operationId).
	DeleteWebhookWithResponse(ctx context.Context, id int64, params *DeleteWebhookParams, reqEditors ...RequestEditorFn) (*DeleteWebhookResponse, error)

	// GetWebhookWithResponse Get one builder webhook destination
	//
	// Returns one webhook destination owned by the authenticated API key user.
	//
	// Returns a wrapper object for the known response body format(s).
	//
	// Corresponds with GET /api/v1/webhooks/{id} (the `GetWebhook` operationId).
	GetWebhookWithResponse(ctx context.Context, id int64, params *GetWebhookParams, reqEditors ...RequestEditorFn) (*GetWebhookResponse, error)

	// UpdateWebhookWithBodyWithResponse Update a builder webhook destination
	//
	// Updates name, HTTPS URL, event types, or enabled state. URL changes force pending_verification and return a new verification token; the new destination must answer 2xx to the signed webhook.verification challenge before deliveries resume. A URL change returns 409 with error.reason=webhook_delivery_in_progress while this destination has an active delivery; retry the same mutation after that request completes.
	//
	// Takes any type of body and a specified content type, and returns a wrapper object for the known response body format(s).
	//
	// Corresponds with PATCH /api/v1/webhooks/{id} (the `UpdateWebhook` operationId).
	UpdateWebhookWithBodyWithResponse(ctx context.Context, id int64, params *UpdateWebhookParams, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*UpdateWebhookResponse, error)

	// UpdateWebhookWithResponse Update a builder webhook destination
	//
	// Updates name, HTTPS URL, event types, or enabled state. URL changes force pending_verification and return a new verification token; the new destination must answer 2xx to the signed webhook.verification challenge before deliveries resume. A URL change returns 409 with error.reason=webhook_delivery_in_progress while this destination has an active delivery; retry the same mutation after that request completes.
	//
	// Takes a body of the `application/json` content type, and returns a wrapper object for the known response body format(s).
	//
	// Corresponds with PATCH /api/v1/webhooks/{id} (the `UpdateWebhook` operationId).
	UpdateWebhookWithResponse(ctx context.Context, id int64, params *UpdateWebhookParams, body UpdateWebhookJSONRequestBody, reqEditors ...RequestEditorFn) (*UpdateWebhookResponse, error)

	// ListWebhookDeliveriesWithResponse List webhook delivery log
	//
	// Recent delivery attempts for one webhook destination owned by the authenticated API key user, newest first, with opaque cursor pagination. Returns 404 (identical to an unknown id) when the endpoint is not owned by the caller, so a non-owner cannot tell an owned-but-empty log apart from someone else's endpoint. Delivery rows omit the request body and signing secret. next_attempt_at is when a pending or retry delivery is next attempted; retry_schedule_reason says whether the queue is following receiver_retry_after, transient_failure, permanent_or_auth_failure, manual_redelivery, or configuration_changed; both are null while an attempt is in flight and once the delivery is delivered or dead_letter. A delivery keeps the existing eight-attempt budget, endpoint failure budget, fairness limits, and ordinary 7380-second upper-bound schedule; see POST /api/v1/webhooks for the bounded Retry-After policy. Resend a dead_letter delivery with POST /api/v1/webhooks/{id}/deliveries/{delivery_id}/redeliver.
	//
	// Returns a wrapper object for the known response body format(s).
	//
	// Corresponds with GET /api/v1/webhooks/{id}/deliveries (the `ListWebhookDeliveries` operationId).
	ListWebhookDeliveriesWithResponse(ctx context.Context, id int64, params *ListWebhookDeliveriesParams, reqEditors ...RequestEditorFn) (*ListWebhookDeliveriesResponse, error)

	// RedeliverWebhookDeliveryWithResponse Redeliver a dead-lettered webhook delivery
	//
	// Returns one dead_letter delivery to the delivery queue with a fresh attempt budget: status becomes pending, attempt_count resets to 0, and next_attempt_at is now, so the delivery worker claims it like any queued delivery, under the same per-owner and per-origin concurrency limits. Use it after a failed delivery exhausts its retries, or after re-enabling an endpoint whose queued deliveries were dead-lettered when it was disabled: PATCH /api/v1/webhooks/{id} {"enabled": true} resends nothing by itself. The resend is signed with the endpoint's current signing secret and sent to its current URL, and keeps the delivery's event_id and idempotency-key header, so a receiver that already processed the event can deduplicate it; x-0xinsider-delivery-attempt starts again at 1. last_response_status and last_error keep the previous failure until the next attempt records its own. Returns 409 when the delivery is already delivered or still queued (pending, retry, or processing), or when the endpoint would not receive it (disabled, not verified, or no longer subscribed to the delivery's event_type); error.message names the step that lets the same request succeed. Returns 404 for an endpoint or delivery the caller does not own, including a delivery removed by the seven-day retention of delivered and dead_letter history.
	//
	// Returns a wrapper object for the known response body format(s).
	//
	// Corresponds with POST /api/v1/webhooks/{id}/deliveries/{delivery_id}/redeliver (the `RedeliverWebhookDelivery` operationId).
	RedeliverWebhookDeliveryWithResponse(ctx context.Context, id int64, deliveryId int64, params *RedeliverWebhookDeliveryParams, reqEditors ...RequestEditorFn) (*RedeliverWebhookDeliveryResponse, error)

	// RotateWebhookSecretWithResponse Rotate a builder webhook signing secret
	//
	// Rotates the endpoint signing secret and returns the new signing_secret once in the response. Returns 409 with error.reason=webhook_delivery_in_progress while a live delivery freezes the current signing nonce; retry after it completes.
	//
	// Returns a wrapper object for the known response body format(s).
	//
	// Corresponds with POST /api/v1/webhooks/{id}/rotate-secret (the `RotateWebhookSecret` operationId).
	RotateWebhookSecretWithResponse(ctx context.Context, id int64, params *RotateWebhookSecretParams, reqEditors ...RequestEditorFn) (*RotateWebhookSecretResponse, error)

	// ActivateWebhookSecretWithResponse Activate a staged builder webhook signing secret
	//
	// Promotes the prepared signing secret to current, returns it once, and signs every delivery with both the new and previous secrets for one hour. Call retire after the receiver has completed its rollout. The current secret remains available through the existing immediate rotate-secret route for emergency replacement.
	//
	// Returns a wrapper object for the known response body format(s).
	//
	// Corresponds with POST /api/v1/webhooks/{id}/rotate-secret/activate (the `ActivateWebhookSecret` operationId).
	ActivateWebhookSecretWithResponse(ctx context.Context, id int64, params *ActivateWebhookSecretParams, reqEditors ...RequestEditorFn) (*ActivateWebhookSecretResponse, error)

	// PrepareWebhookSecretWithResponse Prepare a staged builder webhook signing secret
	//
	// Creates a pending signing secret while the current secret remains active. Deploy the returned one-time signing_secret to the receiver before calling activate. The response exposes secret_rotation.status=pending; an existing pending secret is returned again so a lost response can be recovered safely.
	//
	// Returns a wrapper object for the known response body format(s).
	//
	// Corresponds with POST /api/v1/webhooks/{id}/rotate-secret/prepare (the `PrepareWebhookSecret` operationId).
	PrepareWebhookSecretWithResponse(ctx context.Context, id int64, params *PrepareWebhookSecretParams, reqEditors ...RequestEditorFn) (*PrepareWebhookSecretResponse, error)

	// RetireWebhookSecretWithResponse Retire the previous builder webhook signing secret
	//
	// Ends the one-hour dual-signature overlap and removes the previous signing secret from future delivery authorization. Call this after the receiver accepts the activated secret. The operation is idempotent and does not return signing_secret.
	//
	// Returns a wrapper object for the known response body format(s).
	//
	// Corresponds with POST /api/v1/webhooks/{id}/rotate-secret/retire (the `RetireWebhookSecret` operationId).
	RetireWebhookSecretWithResponse(ctx context.Context, id int64, params *RetireWebhookSecretParams, reqEditors ...RequestEditorFn) (*RetireWebhookSecretResponse, error)

	// VerifyWebhookWithBodyWithResponse Verify a builder webhook destination
	//
	// Activates a pending webhook destination. Two conditions must both hold: the one-time verification token matches and has not expired, AND the destination answers 2xx to a signed challenge this operation POSTs to the endpoint's stored url. The challenge body is {"type":"webhook.verification","token":"<verification_token>","webhook_id":<id>}. It carries x-0xinsider-event-type: webhook.verification plus the same x-0xinsider-timestamp and x-0xinsider-signature headers a delivery carries, signed with that endpoint's signing_secret, so verify it exactly as you verify a delivery. Answer any 2xx within 10 seconds; the challenge response body is never read, and the challenge follows no redirects. A status outside 2xx, no answer within 10 seconds, or a url that does not resolve to a publicly routable address leaves status at pending_verification and returns 422. The token alone never activates an endpoint.
	//
	// Takes any type of body and a specified content type, and returns a wrapper object for the known response body format(s).
	//
	// Corresponds with POST /api/v1/webhooks/{id}/verify (the `VerifyWebhook` operationId).
	VerifyWebhookWithBodyWithResponse(ctx context.Context, id int64, params *VerifyWebhookParams, contentType string, body io.Reader, reqEditors ...RequestEditorFn) (*VerifyWebhookResponse, error)

	// VerifyWebhookWithResponse Verify a builder webhook destination
	//
	// Activates a pending webhook destination. Two conditions must both hold: the one-time verification token matches and has not expired, AND the destination answers 2xx to a signed challenge this operation POSTs to the endpoint's stored url. The challenge body is {"type":"webhook.verification","token":"<verification_token>","webhook_id":<id>}. It carries x-0xinsider-event-type: webhook.verification plus the same x-0xinsider-timestamp and x-0xinsider-signature headers a delivery carries, signed with that endpoint's signing_secret, so verify it exactly as you verify a delivery. Answer any 2xx within 10 seconds; the challenge response body is never read, and the challenge follows no redirects. A status outside 2xx, no answer within 10 seconds, or a url that does not resolve to a publicly routable address leaves status at pending_verification and returns 422. The token alone never activates an endpoint.
	//
	// Takes a body of the `application/json` content type, and returns a wrapper object for the known response body format(s).
	//
	// Corresponds with POST /api/v1/webhooks/{id}/verify (the `VerifyWebhook` operationId).
	VerifyWebhookWithResponse(ctx context.Context, id int64, params *VerifyWebhookParams, body VerifyWebhookJSONRequestBody, reqEditors ...RequestEditorFn) (*VerifyWebhookResponse, error)

	// ListWhaleTradesWithResponse List whale trades
	//
	// Returns recent large trades with signal scoring and persisted suspicion facts. Filter by size, category, trader grade, or persisted suspicion. Filters are applied before pagination, and every request uses SQL-backed limit + 1 pagination so has_more and next_cursor reflect the filtered result set. Cursor-paginated, newest first. Market categories come from provider-backed market_canonical identity. Deprecated alias of GET /api/v1/large-trades, kept live and never removed (#16304); every response carries `Deprecation: @1790047200` (RFC 9745, 2026-09-22T03:20:00Z) and a `Link` to the successor (`rel="successor-version"`) and to the versioning policy (`rel="deprecation"`). No `Sunset` header is sent because no removal is planned. The response adds a top-level `data_quality` object beside `data`, grouping alert, trade, trader, ranking, market, and volume fields by their database writer. `whale_alerts.inserted_xid` is reported as unknown because it is a transaction identifier rather than a timestamp. Its stored clocks are part of the ETag; `meta` continues to hold transport cache facts. Pass since to poll for new trades: the answer holds only the trades recorded after the one you name, and with If-None-Match a poll that finds none is 304 with an empty body.
	//
	// Returns a wrapper object for the known response body format(s).
	//
	// Corresponds with GET /api/v1/whale-trades (the `ListWhaleTrades` operationId).
	//
	// Deprecated: this operation has been marked as deprecated upstream, but no `x-deprecated-reason` was set
	ListWhaleTradesWithResponse(ctx context.Context, params *ListWhaleTradesParams, reqEditors ...RequestEditorFn) (*ListWhaleTradesResponse, error)

	// ListWhaleTradeHistoryWithResponse Replay historical whale trades
	//
	// Returns historical whale trades from local whale_alerts rows, not request-time provider fetches. Filter by condition_id, trader, category, minimum grade, persisted suspicion, platform, and RFC3339 from/to windows. All filters are pushed into SQL before LIMIT, every request uses SQL-backed limit + 1 pagination, and results are ordered newest first by traded_at desc, id desc. Metadata exposes local_replay source and best_effort completeness. Deprecated alias of GET /api/v1/large-trades/history, kept live and never removed (#16304); every response carries `Deprecation: @1790047200` (RFC 9745, 2026-09-22T03:20:00Z) and a `Link` to the successor (`rel="successor-version"`) and to the versioning policy (`rel="deprecation"`). No `Sunset` header is sent because no removal is planned. The response adds a top-level `data_quality` object beside `data`, grouping alert, trade, trader, ranking, market, and volume fields by their database writer. `whale_alerts.inserted_xid` is reported as unknown because it is a transaction identifier rather than a timestamp. Its stored clocks are part of the ETag; `meta` continues to hold transport cache facts.
	//
	// Returns a wrapper object for the known response body format(s).
	//
	// Corresponds with GET /api/v1/whale-trades/history (the `ListWhaleTradeHistory` operationId).
	//
	// Deprecated: this operation has been marked as deprecated upstream, but no `x-deprecated-reason` was set
	ListWhaleTradeHistoryWithResponse(ctx context.Context, params *ListWhaleTradeHistoryParams, reqEditors ...RequestEditorFn) (*ListWhaleTradeHistoryResponse, error)

	// GetWhaleTradeWithResponse Get whale trade by ID
	//
	// Returns one whale trade by raw whale_alerts.id or the wt_-prefixed id emitted by list and history responses. Deprecated alias of GET /api/v1/large-trades/{id}, kept live and never removed (#16304); every response carries `Deprecation: @1790047200` (RFC 9745, 2026-09-22T03:20:00Z) and a `Link` to the successor (`rel="successor-version"`) and to the versioning policy (`rel="deprecation"`). No `Sunset` header is sent because no removal is planned.
	//
	// Returns a wrapper object for the known response body format(s).
	//
	// Corresponds with GET /api/v1/whale-trades/{id} (the `GetWhaleTrade` operationId).
	//
	// Deprecated: this operation has been marked as deprecated upstream, but no `x-deprecated-reason` was set
	GetWhaleTradeWithResponse(ctx context.Context, id string, params *GetWhaleTradeParams, reqEditors ...RequestEditorFn) (*GetWhaleTradeResponse, error)

	// ListWhaleTradeCounterpartyExecutionsWithResponse Page counterparty executions
	//
	// Returns a bounded execution page from the immutable snapshot emitted by whale-trade detail. A stale or changed snapshot returns a cursor-expired error so clients restart from detail. Deprecated alias of GET /api/v1/large-trades/{id}/counterparties/executions, kept live and never removed (#16304); every response carries `Deprecation: @1790047200` (RFC 9745, 2026-09-22T03:20:00Z) and a `Link` to the successor (`rel="successor-version"`) and to the versioning policy (`rel="deprecation"`). No `Sunset` header is sent because no removal is planned.
	//
	// Returns a wrapper object for the known response body format(s).
	//
	// Corresponds with GET /api/v1/whale-trades/{id}/counterparties/executions (the `ListWhaleTradeCounterpartyExecutions` operationId).
	//
	// Deprecated: this operation has been marked as deprecated upstream, but no `x-deprecated-reason` was set
	ListWhaleTradeCounterpartyExecutionsWithResponse(ctx context.Context, id string, params *ListWhaleTradeCounterpartyExecutionsParams, reqEditors ...RequestEditorFn) (*ListWhaleTradeCounterpartyExecutionsResponse, error)

	// ListWhaleTradeCounterpartyMakersWithResponse Page maker counterparties
	//
	// Returns a bounded maker-wallet page for one exact execution. Percentages keep the complete execution denominator across pages. Deprecated alias of GET /api/v1/large-trades/{id}/counterparties/executions/{execution_id}/makers, kept live and never removed (#16304); every response carries `Deprecation: @1790047200` (RFC 9745, 2026-09-22T03:20:00Z) and a `Link` to the successor (`rel="successor-version"`) and to the versioning policy (`rel="deprecation"`). No `Sunset` header is sent because no removal is planned.
	//
	// Returns a wrapper object for the known response body format(s).
	//
	// Corresponds with GET /api/v1/whale-trades/{id}/counterparties/executions/{execution_id}/makers (the `ListWhaleTradeCounterpartyMakers` operationId).
	//
	// Deprecated: this operation has been marked as deprecated upstream, but no `x-deprecated-reason` was set
	ListWhaleTradeCounterpartyMakersWithResponse(ctx context.Context, id string, executionId string, params *ListWhaleTradeCounterpartyMakersParams, reqEditors ...RequestEditorFn) (*ListWhaleTradeCounterpartyMakersResponse, error)
}

ClientWithResponsesInterface is the interface specification for the client with responses above.

type ContentSearchResult

type ContentSearchResult struct {
	// ContentId Backend-owned stable editorial content identifier.
	ContentId string `json:"content_id"`

	// Excerpt Search-result excerpt.
	Excerpt string `json:"excerpt"`

	// Kind Editorial content kind.
	Kind ContentSearchResultKind `json:"kind"`

	// Slug Backend-owned content slug.
	Slug string `json:"slug"`

	// Title Editorial title.
	Title string `json:"title"`

	// Url Canonical first-party content URL.
	Url string `json:"url"`
}

ContentSearchResult defines model for ContentSearchResult.

type ContentSearchResultKind

type ContentSearchResultKind string

ContentSearchResultKind Editorial content kind.

const (
	ContentSearchResultKindComparison ContentSearchResultKind = "comparison"
	ContentSearchResultKindGlossary   ContentSearchResultKind = "glossary"
	ContentSearchResultKindLearn      ContentSearchResultKind = "learn"
	ContentSearchResultKindResearch   ContentSearchResultKind = "research"
	ContentSearchResultKindStrategy   ContentSearchResultKind = "strategy"
)

Defines values for ContentSearchResultKind.

func (ContentSearchResultKind) Valid

func (e ContentSearchResultKind) Valid() bool

Valid indicates whether the value is a known member of the ContentSearchResultKind enum.

type CounterpartyAnalysis

type CounterpartyAnalysis struct {
	// AnalysisId Stable digest binding page cursors to one snapshot and execution set.
	AnalysisId              *string                 `json:"analysis_id,omitempty"`
	AvailableExecutionCount int                     `json:"available_execution_count"`
	ExecutionCount          int                     `json:"execution_count"`
	Executions              []CounterpartyExecution `json:"executions"`

	// ExecutionsNextCursor Stable cursor after the last execution included in the bounded inline page.
	ExecutionsNextCursor *string `json:"executions_next_cursor,omitempty"`

	// SnapshotId Deterministic immutable membership snapshot for this detail response.
	SnapshotId                *string                    `json:"snapshot_id,omitempty"`
	Status                    CounterpartyAnalysisStatus `json:"status"`
	UnavailableExecutionCount int                        `json:"unavailable_execution_count"`
	UnavailableReason         *string                    `json:"unavailable_reason,omitempty"`
}

CounterpartyAnalysis defines model for CounterpartyAnalysis.

type CounterpartyAnalysisStatus

type CounterpartyAnalysisStatus string

CounterpartyAnalysisStatus defines model for CounterpartyAnalysis.Status.

const (
	CounterpartyAnalysisStatusAvailable   CounterpartyAnalysisStatus = "available"
	CounterpartyAnalysisStatusPartial     CounterpartyAnalysisStatus = "partial"
	CounterpartyAnalysisStatusUnavailable CounterpartyAnalysisStatus = "unavailable"
)

Defines values for CounterpartyAnalysisStatus.

func (CounterpartyAnalysisStatus) Valid

func (e CounterpartyAnalysisStatus) Valid() bool

Valid indicates whether the value is a known member of the CounterpartyAnalysisStatus enum.

type CounterpartyExecution

type CounterpartyExecution struct {
	ExchangeFamily CounterpartyExecutionExchangeFamily `json:"exchange_family"`
	ExecutionId    string                              `json:"execution_id"`
	Makers         []CounterpartyParticipant           `json:"makers"`

	// MakersNextCursor Stable cursor after the last maker included in the bounded inline page.
	MakersNextCursor      *string                 `json:"makers_next_cursor,omitempty"`
	OrdersMatchedLogIndex int                     `json:"orders_matched_log_index"`
	Taker                 CounterpartyParticipant `json:"taker"`
	TransactionHash       string                  `json:"transaction_hash"`
}

CounterpartyExecution defines model for CounterpartyExecution.

type CounterpartyExecutionExchangeFamily

type CounterpartyExecutionExchangeFamily string

CounterpartyExecutionExchangeFamily defines model for CounterpartyExecution.ExchangeFamily.

const (
	CtfV2        CounterpartyExecutionExchangeFamily = "ctf_v2"
	NegRiskCtfV2 CounterpartyExecutionExchangeFamily = "neg_risk_ctf_v2"
)

Defines values for CounterpartyExecutionExchangeFamily.

func (CounterpartyExecutionExchangeFamily) Valid

Valid indicates whether the value is a known member of the CounterpartyExecutionExchangeFamily enum.

type CounterpartyMakerPage

type CounterpartyMakerPage struct {
	AnalysisId  string                    `json:"analysis_id"`
	ExecutionId string                    `json:"execution_id"`
	Items       []CounterpartyParticipant `json:"items"`

	// NextCursor Cursor bound to the analysis, execution, last full-denominator share total, and wallet.
	NextCursor *string `json:"next_cursor,omitempty"`
	SnapshotId string  `json:"snapshot_id"`
}

CounterpartyMakerPage defines model for CounterpartyMakerPage.

type CounterpartyMatchBreakdown

type CounterpartyMatchBreakdown struct {
	// FilledShares Exact decimal shares.
	FilledShares   string                              `json:"filled_shares"`
	MakerFillCount int                                 `json:"maker_fill_count"`
	MatchType      CounterpartyMatchBreakdownMatchType `json:"match_type"`
}

CounterpartyMatchBreakdown defines model for CounterpartyMatchBreakdown.

type CounterpartyMatchBreakdownMatchType

type CounterpartyMatchBreakdownMatchType string

CounterpartyMatchBreakdownMatchType defines model for CounterpartyMatchBreakdown.MatchType.

const (
	COMPLEMENTARY CounterpartyMatchBreakdownMatchType = "COMPLEMENTARY"
	MERGE         CounterpartyMatchBreakdownMatchType = "MERGE"
	MINT          CounterpartyMatchBreakdownMatchType = "MINT"
)

Defines values for CounterpartyMatchBreakdownMatchType.

func (CounterpartyMatchBreakdownMatchType) Valid

Valid indicates whether the value is a known member of the CounterpartyMatchBreakdownMatchType enum.

type CounterpartyParticipant

type CounterpartyParticipant struct {
	CounterpartyKey string  `json:"counterparty_key"`
	DisplayName     *string `json:"display_name,omitempty"`

	// ExecutionWallet Lowercase Polygon wallet from the exact OrderFilled log.
	ExecutionWallet string `json:"execution_wallet"`

	// FilledShares Exact decimal shares.
	FilledShares string `json:"filled_shares"`

	// FilledUsdc Exact decimal USDC amount.
	FilledUsdc     string                                `json:"filled_usdc"`
	Grade          *string                               `json:"grade,omitempty"`
	IdentityStatus CounterpartyParticipantIdentityStatus `json:"identity_status"`

	// LastTradedAt Latest nonfuture recorded wallet-wide trade time for the tracked trader supplying this participant's grade. Omitted when unavailable; not the receipt time or the owner EOA's activity. Trader context is read with the response and is not frozen by execution membership snapshots.
	LastTradedAt   *time.Time                   `json:"last_traded_at,omitempty"`
	MakerFillCount int                          `json:"maker_fill_count"`
	MatchBreakdown []CounterpartyMatchBreakdown `json:"match_breakdown"`

	// ProfileSegment 0xinsider profile path segment for this participant, present only when the execution wallet has a tracked trader: `@<username>` when that username resolves to the trader alone, otherwise the trader's lowercase wallet. Percent-encode the part after `@` and append to `https://0xinsider.com/profile/`.
	ProfileSegment   *string `json:"profile_segment,omitempty"`
	ResolutionBlock  *int    `json:"resolution_block,omitempty"`
	ResolutionSource *string `json:"resolution_source,omitempty"`
	ResolvedUserId   *string `json:"resolved_user_id,omitempty"`

	// SharePct Participant share of the exact execution, from 0 through 100.
	SharePct     string  `json:"share_pct"`
	WalletFamily *string `json:"wallet_family,omitempty"`
}

CounterpartyParticipant defines model for CounterpartyParticipant.

type CounterpartyParticipantIdentityStatus

type CounterpartyParticipantIdentityStatus string

CounterpartyParticipantIdentityStatus defines model for CounterpartyParticipant.IdentityStatus.

const (
	CounterpartyParticipantIdentityStatusInfrastructure CounterpartyParticipantIdentityStatus = "infrastructure"
	CounterpartyParticipantIdentityStatusResolved       CounterpartyParticipantIdentityStatus = "resolved"
	CounterpartyParticipantIdentityStatusUnavailable    CounterpartyParticipantIdentityStatus = "unavailable"
)

Defines values for CounterpartyParticipantIdentityStatus.

func (CounterpartyParticipantIdentityStatus) Valid

Valid indicates whether the value is a known member of the CounterpartyParticipantIdentityStatus enum.

type CreateMcpJsonRpcResponse200JSONResponseBodyId0

type CreateMcpJsonRpcResponse200JSONResponseBodyId0 = string

CreateMcpJsonRpcResponse200JSONResponseBodyId0 defines parameters for CreateMcpJsonRpcResponse.

type CreateMcpJsonRpcResponse200JSONResponseBodyId1

type CreateMcpJsonRpcResponse200JSONResponseBodyId1 = float32

CreateMcpJsonRpcResponse200JSONResponseBodyId1 defines parameters for CreateMcpJsonRpcResponse.

type CreateMcpJsonRpcResponse200JSONResponseBodyJsonrpc

type CreateMcpJsonRpcResponse200JSONResponseBodyJsonrpc string

CreateMcpJsonRpcResponse200JSONResponseBodyJsonrpc defines parameters for CreateMcpJsonRpcResponse.

const (
	CreateMcpJsonRpcResponse200JSONResponseBodyJsonrpcN20 CreateMcpJsonRpcResponse200JSONResponseBodyJsonrpc = "2.0"
)

Defines values for CreateMcpJsonRpcResponse200JSONResponseBodyJsonrpc.

func (CreateMcpJsonRpcResponse200JSONResponseBodyJsonrpc) Valid

Valid indicates whether the value is a known member of the CreateMcpJsonRpcResponse200JSONResponseBodyJsonrpc enum.

type CreateMcpJsonRpcResponse200JSONResponseBody_Id

type CreateMcpJsonRpcResponse200JSONResponseBody_Id struct {
	// contains filtered or unexported fields
}

CreateMcpJsonRpcResponse200JSONResponseBody_Id defines parameters for CreateMcpJsonRpcResponse.

func (CreateMcpJsonRpcResponse200JSONResponseBody_Id) AsCreateMcpJsonRpcResponse200JSONResponseBodyId0

func (t CreateMcpJsonRpcResponse200JSONResponseBody_Id) AsCreateMcpJsonRpcResponse200JSONResponseBodyId0() (CreateMcpJsonRpcResponse200JSONResponseBodyId0, error)

AsCreateMcpJsonRpcResponse200JSONResponseBodyId0 returns the union data inside the CreateMcpJsonRpcResponse200JSONResponseBody_Id as a CreateMcpJsonRpcResponse200JSONResponseBodyId0

func (CreateMcpJsonRpcResponse200JSONResponseBody_Id) AsCreateMcpJsonRpcResponse200JSONResponseBodyId1

func (t CreateMcpJsonRpcResponse200JSONResponseBody_Id) AsCreateMcpJsonRpcResponse200JSONResponseBodyId1() (CreateMcpJsonRpcResponse200JSONResponseBodyId1, error)

AsCreateMcpJsonRpcResponse200JSONResponseBodyId1 returns the union data inside the CreateMcpJsonRpcResponse200JSONResponseBody_Id as a CreateMcpJsonRpcResponse200JSONResponseBodyId1

func (*CreateMcpJsonRpcResponse200JSONResponseBody_Id) FromCreateMcpJsonRpcResponse200JSONResponseBodyId0

func (t *CreateMcpJsonRpcResponse200JSONResponseBody_Id) FromCreateMcpJsonRpcResponse200JSONResponseBodyId0(v CreateMcpJsonRpcResponse200JSONResponseBodyId0) error

FromCreateMcpJsonRpcResponse200JSONResponseBodyId0 overwrites any union data inside the CreateMcpJsonRpcResponse200JSONResponseBody_Id as the provided CreateMcpJsonRpcResponse200JSONResponseBodyId0

func (*CreateMcpJsonRpcResponse200JSONResponseBody_Id) FromCreateMcpJsonRpcResponse200JSONResponseBodyId1

func (t *CreateMcpJsonRpcResponse200JSONResponseBody_Id) FromCreateMcpJsonRpcResponse200JSONResponseBodyId1(v CreateMcpJsonRpcResponse200JSONResponseBodyId1) error

FromCreateMcpJsonRpcResponse200JSONResponseBodyId1 overwrites any union data inside the CreateMcpJsonRpcResponse200JSONResponseBody_Id as the provided CreateMcpJsonRpcResponse200JSONResponseBodyId1

func (CreateMcpJsonRpcResponse200JSONResponseBody_Id) MarshalJSON

func (*CreateMcpJsonRpcResponse200JSONResponseBody_Id) MergeCreateMcpJsonRpcResponse200JSONResponseBodyId0

func (t *CreateMcpJsonRpcResponse200JSONResponseBody_Id) MergeCreateMcpJsonRpcResponse200JSONResponseBodyId0(v CreateMcpJsonRpcResponse200JSONResponseBodyId0) error

MergeCreateMcpJsonRpcResponse200JSONResponseBodyId0 performs a merge with any union data inside the CreateMcpJsonRpcResponse200JSONResponseBody_Id, using the provided CreateMcpJsonRpcResponse200JSONResponseBodyId0

func (*CreateMcpJsonRpcResponse200JSONResponseBody_Id) MergeCreateMcpJsonRpcResponse200JSONResponseBodyId1

func (t *CreateMcpJsonRpcResponse200JSONResponseBody_Id) MergeCreateMcpJsonRpcResponse200JSONResponseBodyId1(v CreateMcpJsonRpcResponse200JSONResponseBodyId1) error

MergeCreateMcpJsonRpcResponse200JSONResponseBodyId1 performs a merge with any union data inside the CreateMcpJsonRpcResponse200JSONResponseBody_Id, using the provided CreateMcpJsonRpcResponse200JSONResponseBodyId1

func (*CreateMcpJsonRpcResponse200JSONResponseBody_Id) UnmarshalJSON

type CreateMcpJsonRpcResponseJSONBody

type CreateMcpJsonRpcResponseJSONBody struct {
	// Id Request identifier echoed exactly in one JSON-RPC response; supported notifications omit it and receive an empty HTTP 202.
	Id *CreateMcpJsonRpcResponseJSONBody_Id `json:"id,omitempty"`

	// Jsonrpc JSON-RPC protocol version; this server accepts 2.0.
	Jsonrpc CreateMcpJsonRpcResponseJSONBodyJsonrpc `json:"jsonrpc"`

	// Method MCP method to invoke.
	Method CreateMcpJsonRpcResponseJSONBodyMethod `json:"method"`

	// Params Method-specific MCP parameters.
	Params *map[string]interface{} `json:"params,omitempty"`
}

CreateMcpJsonRpcResponseJSONBody defines parameters for CreateMcpJsonRpcResponse.

type CreateMcpJsonRpcResponseJSONBodyId0

type CreateMcpJsonRpcResponseJSONBodyId0 = string

CreateMcpJsonRpcResponseJSONBodyId0 defines parameters for CreateMcpJsonRpcResponse.

type CreateMcpJsonRpcResponseJSONBodyId1

type CreateMcpJsonRpcResponseJSONBodyId1 = float32

CreateMcpJsonRpcResponseJSONBodyId1 defines parameters for CreateMcpJsonRpcResponse.

type CreateMcpJsonRpcResponseJSONBodyJsonrpc

type CreateMcpJsonRpcResponseJSONBodyJsonrpc string

CreateMcpJsonRpcResponseJSONBodyJsonrpc defines parameters for CreateMcpJsonRpcResponse.

const (
	CreateMcpJsonRpcResponseJSONBodyJsonrpcN20 CreateMcpJsonRpcResponseJSONBodyJsonrpc = "2.0"
)

Defines values for CreateMcpJsonRpcResponseJSONBodyJsonrpc.

func (CreateMcpJsonRpcResponseJSONBodyJsonrpc) Valid

Valid indicates whether the value is a known member of the CreateMcpJsonRpcResponseJSONBodyJsonrpc enum.

type CreateMcpJsonRpcResponseJSONBodyMethod

type CreateMcpJsonRpcResponseJSONBodyMethod string

CreateMcpJsonRpcResponseJSONBodyMethod defines parameters for CreateMcpJsonRpcResponse.

const (
	Initialize               CreateMcpJsonRpcResponseJSONBodyMethod = "initialize"
	Notificationscancelled   CreateMcpJsonRpcResponseJSONBodyMethod = "notifications/cancelled"
	Notificationsinitialized CreateMcpJsonRpcResponseJSONBodyMethod = "notifications/initialized"
	Ping                     CreateMcpJsonRpcResponseJSONBodyMethod = "ping"
	Toolscall                CreateMcpJsonRpcResponseJSONBodyMethod = "tools/call"
	Toolslist                CreateMcpJsonRpcResponseJSONBodyMethod = "tools/list"
)

Defines values for CreateMcpJsonRpcResponseJSONBodyMethod.

func (CreateMcpJsonRpcResponseJSONBodyMethod) Valid

Valid indicates whether the value is a known member of the CreateMcpJsonRpcResponseJSONBodyMethod enum.

type CreateMcpJsonRpcResponseJSONBody_Id

type CreateMcpJsonRpcResponseJSONBody_Id struct {
	// contains filtered or unexported fields
}

CreateMcpJsonRpcResponseJSONBody_Id defines parameters for CreateMcpJsonRpcResponse.

func (CreateMcpJsonRpcResponseJSONBody_Id) AsCreateMcpJsonRpcResponseJSONBodyId0

func (t CreateMcpJsonRpcResponseJSONBody_Id) AsCreateMcpJsonRpcResponseJSONBodyId0() (CreateMcpJsonRpcResponseJSONBodyId0, error)

AsCreateMcpJsonRpcResponseJSONBodyId0 returns the union data inside the CreateMcpJsonRpcResponseJSONBody_Id as a CreateMcpJsonRpcResponseJSONBodyId0

func (CreateMcpJsonRpcResponseJSONBody_Id) AsCreateMcpJsonRpcResponseJSONBodyId1

func (t CreateMcpJsonRpcResponseJSONBody_Id) AsCreateMcpJsonRpcResponseJSONBodyId1() (CreateMcpJsonRpcResponseJSONBodyId1, error)

AsCreateMcpJsonRpcResponseJSONBodyId1 returns the union data inside the CreateMcpJsonRpcResponseJSONBody_Id as a CreateMcpJsonRpcResponseJSONBodyId1

func (*CreateMcpJsonRpcResponseJSONBody_Id) FromCreateMcpJsonRpcResponseJSONBodyId0

func (t *CreateMcpJsonRpcResponseJSONBody_Id) FromCreateMcpJsonRpcResponseJSONBodyId0(v CreateMcpJsonRpcResponseJSONBodyId0) error

FromCreateMcpJsonRpcResponseJSONBodyId0 overwrites any union data inside the CreateMcpJsonRpcResponseJSONBody_Id as the provided CreateMcpJsonRpcResponseJSONBodyId0

func (*CreateMcpJsonRpcResponseJSONBody_Id) FromCreateMcpJsonRpcResponseJSONBodyId1

func (t *CreateMcpJsonRpcResponseJSONBody_Id) FromCreateMcpJsonRpcResponseJSONBodyId1(v CreateMcpJsonRpcResponseJSONBodyId1) error

FromCreateMcpJsonRpcResponseJSONBodyId1 overwrites any union data inside the CreateMcpJsonRpcResponseJSONBody_Id as the provided CreateMcpJsonRpcResponseJSONBodyId1

func (CreateMcpJsonRpcResponseJSONBody_Id) MarshalJSON

func (t CreateMcpJsonRpcResponseJSONBody_Id) MarshalJSON() ([]byte, error)

func (*CreateMcpJsonRpcResponseJSONBody_Id) MergeCreateMcpJsonRpcResponseJSONBodyId0

func (t *CreateMcpJsonRpcResponseJSONBody_Id) MergeCreateMcpJsonRpcResponseJSONBodyId0(v CreateMcpJsonRpcResponseJSONBodyId0) error

MergeCreateMcpJsonRpcResponseJSONBodyId0 performs a merge with any union data inside the CreateMcpJsonRpcResponseJSONBody_Id, using the provided CreateMcpJsonRpcResponseJSONBodyId0

func (*CreateMcpJsonRpcResponseJSONBody_Id) MergeCreateMcpJsonRpcResponseJSONBodyId1

func (t *CreateMcpJsonRpcResponseJSONBody_Id) MergeCreateMcpJsonRpcResponseJSONBodyId1(v CreateMcpJsonRpcResponseJSONBodyId1) error

MergeCreateMcpJsonRpcResponseJSONBodyId1 performs a merge with any union data inside the CreateMcpJsonRpcResponseJSONBody_Id, using the provided CreateMcpJsonRpcResponseJSONBodyId1

func (*CreateMcpJsonRpcResponseJSONBody_Id) UnmarshalJSON

func (t *CreateMcpJsonRpcResponseJSONBody_Id) UnmarshalJSON(b []byte) error

type CreateMcpJsonRpcResponseJSONRequestBody

type CreateMcpJsonRpcResponseJSONRequestBody CreateMcpJsonRpcResponseJSONBody

CreateMcpJsonRpcResponseJSONRequestBody defines body for CreateMcpJsonRpcResponse for application/json ContentType.

type CreateMcpJsonRpcResponseParams

type CreateMcpJsonRpcResponseParams struct {
	// XQueryValidation Opt into strict query-name validation. The default is compatible: unknown names are ignored and reported in X-Query-Ignored. With strict, an unknown name returns 400 bad_request with error.reason unknown_query_parameter before the handler runs, including when its percent escape is incomplete.
	XQueryValidation *CreateMcpJsonRpcResponseParamsXQueryValidation `json:"X-Query-Validation,omitempty"`

	// McpSessionId Session ID minted by the server on initialize; echoed on every subsequent request.
	McpSessionId *string `json:"Mcp-Session-Id,omitempty"`

	// MCPProtocolVersion The negotiated MCP protocol revision, sent on every request after initialize (MCP Streamable HTTP transport). Accepted values: 2025-11-25, 2025-06-18, 2025-03-26, 2024-11-05. Any other value answers HTTP 400 with JSON-RPC error -32600. Absent, the request is served as 2025-03-26.
	MCPProtocolVersion *CreateMcpJsonRpcResponseParamsMCPProtocolVersion `json:"MCP-Protocol-Version,omitempty"`
}

CreateMcpJsonRpcResponseParams defines parameters for CreateMcpJsonRpcResponse.

type CreateMcpJsonRpcResponseParamsMCPProtocolVersion added in v0.2.0

type CreateMcpJsonRpcResponseParamsMCPProtocolVersion string

CreateMcpJsonRpcResponseParamsMCPProtocolVersion defines parameters for CreateMcpJsonRpcResponse.

const (
	CreateMcpJsonRpcResponseParamsMCPProtocolVersionN20241105 CreateMcpJsonRpcResponseParamsMCPProtocolVersion = "2024-11-05"
	CreateMcpJsonRpcResponseParamsMCPProtocolVersionN20250326 CreateMcpJsonRpcResponseParamsMCPProtocolVersion = "2025-03-26"
	CreateMcpJsonRpcResponseParamsMCPProtocolVersionN20250618 CreateMcpJsonRpcResponseParamsMCPProtocolVersion = "2025-06-18"
	CreateMcpJsonRpcResponseParamsMCPProtocolVersionN20251125 CreateMcpJsonRpcResponseParamsMCPProtocolVersion = "2025-11-25"
)

Defines values for CreateMcpJsonRpcResponseParamsMCPProtocolVersion.

func (CreateMcpJsonRpcResponseParamsMCPProtocolVersion) Valid added in v0.2.0

Valid indicates whether the value is a known member of the CreateMcpJsonRpcResponseParamsMCPProtocolVersion enum.

type CreateMcpJsonRpcResponseParamsXQueryValidation added in v0.3.0

type CreateMcpJsonRpcResponseParamsXQueryValidation string

CreateMcpJsonRpcResponseParamsXQueryValidation defines parameters for CreateMcpJsonRpcResponse.

const (
	CreateMcpJsonRpcResponseParamsXQueryValidationStrict CreateMcpJsonRpcResponseParamsXQueryValidation = "strict"
)

Defines values for CreateMcpJsonRpcResponseParamsXQueryValidation.

func (CreateMcpJsonRpcResponseParamsXQueryValidation) Valid added in v0.3.0

Valid indicates whether the value is a known member of the CreateMcpJsonRpcResponseParamsXQueryValidation enum.

type CreateMcpJsonRpcResponseResponse

type CreateMcpJsonRpcResponseResponse struct {
	Body         []byte
	HTTPResponse *http.Response
	// JSON200 the response for an HTTP 200 `application/json` response
	JSON200 *struct {
		Error *struct {
			Code    int    `json:"code"`
			Message string `json:"message"`
		} `json:"error,omitempty"`
		Id      *CreateMcpJsonRpcResponse200JSONResponseBody_Id    `json:"id"`
		Jsonrpc CreateMcpJsonRpcResponse200JSONResponseBodyJsonrpc `json:"jsonrpc"`
		Result  *map[string]interface{}                            `json:"result,omitempty"`
	}
	// JSON400 the response for an HTTP 400 `application/json` response
	JSON400 *McpJsonRpcError
	// JSON401 the response for an HTTP 401 `application/json` response
	JSON401 *ApiError
	// JSON402 the response for an HTTP 402 `application/json` response
	JSON402 *ApiError
	// JSON403 the response for an HTTP 403 `application/json` response
	JSON403 *ApiError
	// JSON429 the response for an HTTP 429 `application/json` response
	JSON429 *ApiError
	// JSON500 the response for an HTTP 500 `application/json` response
	JSON500 *ApiError
	// Headers200 the parsed response headers for an HTTP 200 response
	Headers200 *CreateMcpJsonRpcResponseResponse200Headers
	// Headers202 the parsed response headers for an HTTP 202 response
	Headers202 *CreateMcpJsonRpcResponseResponse202Headers
	// Headers429 the parsed response headers for an HTTP 429 response
	Headers429 *CreateMcpJsonRpcResponseResponse429Headers
}

func ParseCreateMcpJsonRpcResponseResponse

func ParseCreateMcpJsonRpcResponseResponse(rsp *http.Response) (*CreateMcpJsonRpcResponseResponse, error)

ParseCreateMcpJsonRpcResponseResponse parses an HTTP response from a CreateMcpJsonRpcResponseWithResponse call

func (CreateMcpJsonRpcResponseResponse) ContentType

func (r CreateMcpJsonRpcResponseResponse) ContentType() string

ContentType is a convenience method to retrieve the Content-Type value from the HTTP response headers

func (CreateMcpJsonRpcResponseResponse) GetBody

func (r CreateMcpJsonRpcResponseResponse) GetBody() []byte

GetBody returns the raw response body bytes

func (CreateMcpJsonRpcResponseResponse) GetJSON200

func (r CreateMcpJsonRpcResponseResponse) GetJSON200() *struct {
	Error *struct {
		Code    int    `json:"code"`
		Message string `json:"message"`
	} `json:"error,omitempty"`
	Id      *CreateMcpJsonRpcResponse200JSONResponseBody_Id    `json:"id"`
	Jsonrpc CreateMcpJsonRpcResponse200JSONResponseBodyJsonrpc `json:"jsonrpc"`
	Result  *map[string]interface{}                            `json:"result,omitempty"`
}

GetJSON200 returns the response for an HTTP 200 `application/json` response

func (CreateMcpJsonRpcResponseResponse) GetJSON400

GetJSON400 returns the response for an HTTP 400 `application/json` response

func (CreateMcpJsonRpcResponseResponse) GetJSON401

GetJSON401 returns the response for an HTTP 401 `application/json` response

func (CreateMcpJsonRpcResponseResponse) GetJSON402

GetJSON402 returns the response for an HTTP 402 `application/json` response

func (CreateMcpJsonRpcResponseResponse) GetJSON403

GetJSON403 returns the response for an HTTP 403 `application/json` response

func (CreateMcpJsonRpcResponseResponse) GetJSON429

GetJSON429 returns the response for an HTTP 429 `application/json` response

func (CreateMcpJsonRpcResponseResponse) GetJSON500

GetJSON500 returns the response for an HTTP 500 `application/json` response

func (CreateMcpJsonRpcResponseResponse) Status

Status returns HTTPResponse.Status

func (CreateMcpJsonRpcResponseResponse) StatusCode

func (r CreateMcpJsonRpcResponseResponse) StatusCode() int

StatusCode returns HTTPResponse.StatusCode

type CreateMcpJsonRpcResponseResponse200Headers

type CreateMcpJsonRpcResponseResponse200Headers struct {
	RateLimitLimit      *int
	RateLimitRemaining  *int
	RateLimitReset      *int
	ServerTiming        *string
	XEffectiveQuery     *string
	XQueryIgnored       *string
	XRateLimitLimit     *int
	XRateLimitRemaining *int
	XRateLimitReset     *int
	XRequestId          *string
	XUsageAccounting    *string
}

CreateMcpJsonRpcResponseResponse200Headers the declared response headers of an HTTP 200 response for CreateMcpJsonRpcResponse

type CreateMcpJsonRpcResponseResponse202Headers

type CreateMcpJsonRpcResponseResponse202Headers struct {
	RateLimitLimit      *int
	RateLimitRemaining  *int
	RateLimitReset      *int
	ServerTiming        *string
	XEffectiveQuery     *string
	XQueryIgnored       *string
	XRateLimitLimit     *int
	XRateLimitRemaining *int
	XRateLimitReset     *int
	XRequestId          *string
	XUsageAccounting    *string
}

CreateMcpJsonRpcResponseResponse202Headers the declared response headers of an HTTP 202 response for CreateMcpJsonRpcResponse

type CreateMcpJsonRpcResponseResponse429Headers

type CreateMcpJsonRpcResponseResponse429Headers struct {
	RateLimitLimit      *int
	RateLimitRemaining  *int
	RateLimitReset      *int
	RetryAfter          *int
	XRateLimitLimit     *int
	XRateLimitRemaining *int
	XRateLimitReset     *int
	XRequestId          *string
}

CreateMcpJsonRpcResponseResponse429Headers the declared response headers of an HTTP 429 response for CreateMcpJsonRpcResponse

type CreateWebhook200JSONResponseBodyObject

type CreateWebhook200JSONResponseBodyObject string

CreateWebhook200JSONResponseBodyObject defines parameters for CreateWebhook.

const (
	CreateWebhook200JSONResponseBodyObjectWebhook CreateWebhook200JSONResponseBodyObject = "webhook"
)

Defines values for CreateWebhook200JSONResponseBodyObject.

func (CreateWebhook200JSONResponseBodyObject) Valid

Valid indicates whether the value is a known member of the CreateWebhook200JSONResponseBodyObject enum.

type CreateWebhookJSONRequestBody

type CreateWebhookJSONRequestBody = CreateWebhookRequest

CreateWebhookJSONRequestBody defines body for CreateWebhook for application/json ContentType.

type CreateWebhookParams

type CreateWebhookParams struct {
	// XQueryValidation Opt into strict query-name validation. The default is compatible: unknown names are ignored and reported in X-Query-Ignored. With strict, an unknown name returns 400 bad_request with error.reason unknown_query_parameter before the handler runs, including when its percent escape is incomplete.
	XQueryValidation *CreateWebhookParamsXQueryValidation `json:"X-Query-Validation,omitempty"`

	// IdempotencyKey Optional safe-retry key. Reuse the same value only when retrying the exact same mutation request body; a different body returns 422 and an in-flight matching request returns 409.
	IdempotencyKey *string `json:"Idempotency-Key,omitempty"`
}

CreateWebhookParams defines parameters for CreateWebhook.

type CreateWebhookParamsXQueryValidation added in v0.3.0

type CreateWebhookParamsXQueryValidation string

CreateWebhookParamsXQueryValidation defines parameters for CreateWebhook.

const (
	CreateWebhookParamsXQueryValidationStrict CreateWebhookParamsXQueryValidation = "strict"
)

Defines values for CreateWebhookParamsXQueryValidation.

func (CreateWebhookParamsXQueryValidation) Valid added in v0.3.0

Valid indicates whether the value is a known member of the CreateWebhookParamsXQueryValidation enum.

type CreateWebhookRequest

type CreateWebhookRequest struct {
	EventTypes []WebhookEventType `json:"event_types"`
	Name       string             `json:"name"`

	// TradeFilters 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.
	TradeFilters *LargeTradeSubscriptionFilters `json:"trade_filters,omitempty"`

	// Url Public HTTPS callback URL on the default port 443. Local, private, and internal targets are rejected, as is any explicit port other than 443 and any URL carrying credentials. Each user's URLs are unique after normalizing HTTPS scheme/host case, trailing DNS dots and port 443; path/query case is preserved. Pending verification and PATCH-disabled endpoints still reserve their stored URL. The destination must answer the signed webhook.verification challenge with a 2xx before POST /api/v1/webhooks/{id}/verify can activate the endpoint.
	Url string `json:"url"`
}

CreateWebhookRequest defines model for CreateWebhookRequest.

type CreateWebhookResponse

type CreateWebhookResponse struct {
	Body         []byte
	HTTPResponse *http.Response
	// JSON200 the response for an HTTP 200 `application/json` response
	JSON200 *struct {
		Data   WebhookEndpoint                        `json:"data"`
		Meta   ResponseMeta                           `json:"meta"`
		Object CreateWebhook200JSONResponseBodyObject `json:"object"`
	}
	// JSON400 the response for an HTTP 400 `application/json` response
	JSON400 *ApiError
	// JSON401 the response for an HTTP 401 `application/json` response
	JSON401 *ApiError
	// JSON402 the response for an HTTP 402 `application/json` response
	JSON402 *ApiError
	// JSON403 the response for an HTTP 403 `application/json` response
	JSON403 *ApiError
	// JSON408 the response for an HTTP 408 `application/json` response
	JSON408 *ApiError
	// JSON409 the response for an HTTP 409 `application/json` response
	JSON409 *ApiError
	// JSON413 the response for an HTTP 413 `application/json` response
	JSON413 *ApiError
	// JSON415 the response for an HTTP 415 `application/json` response
	JSON415 *ApiError
	// JSON422 the response for an HTTP 422 `application/json` response
	JSON422 *ApiError
	// JSON423 the response for an HTTP 423 `application/json` response
	JSON423 *ApiError
	// JSON429 the response for an HTTP 429 `application/json` response
	JSON429 *ApiError
	// JSON500 the response for an HTTP 500 `application/json` response
	JSON500 *ApiError
	// JSON503 the response for an HTTP 503 `application/json` response
	JSON503 *ApiError
	// Headers200 the parsed response headers for an HTTP 200 response
	Headers200 *CreateWebhookResponse200Headers
	// Headers429 the parsed response headers for an HTTP 429 response
	Headers429 *CreateWebhookResponse429Headers
	// Headers503 the parsed response headers for an HTTP 503 response
	Headers503 *CreateWebhookResponse503Headers
}

func ParseCreateWebhookResponse

func ParseCreateWebhookResponse(rsp *http.Response) (*CreateWebhookResponse, error)

ParseCreateWebhookResponse parses an HTTP response from a CreateWebhookWithResponse call

func (CreateWebhookResponse) ContentType

func (r CreateWebhookResponse) ContentType() string

ContentType is a convenience method to retrieve the Content-Type value from the HTTP response headers

func (CreateWebhookResponse) GetBody

func (r CreateWebhookResponse) GetBody() []byte

GetBody returns the raw response body bytes

func (CreateWebhookResponse) GetJSON200

func (r CreateWebhookResponse) GetJSON200() *struct {
	Data   WebhookEndpoint                        `json:"data"`
	Meta   ResponseMeta                           `json:"meta"`
	Object CreateWebhook200JSONResponseBodyObject `json:"object"`
}

GetJSON200 returns the response for an HTTP 200 `application/json` response

func (CreateWebhookResponse) GetJSON400

func (r CreateWebhookResponse) GetJSON400() *ApiError

GetJSON400 returns the response for an HTTP 400 `application/json` response

func (CreateWebhookResponse) GetJSON401

func (r CreateWebhookResponse) GetJSON401() *ApiError

GetJSON401 returns the response for an HTTP 401 `application/json` response

func (CreateWebhookResponse) GetJSON402

func (r CreateWebhookResponse) GetJSON402() *ApiError

GetJSON402 returns the response for an HTTP 402 `application/json` response

func (CreateWebhookResponse) GetJSON403

func (r CreateWebhookResponse) GetJSON403() *ApiError

GetJSON403 returns the response for an HTTP 403 `application/json` response

func (CreateWebhookResponse) GetJSON408 added in v0.2.0

func (r CreateWebhookResponse) GetJSON408() *ApiError

GetJSON408 returns the response for an HTTP 408 `application/json` response

func (CreateWebhookResponse) GetJSON409

func (r CreateWebhookResponse) GetJSON409() *ApiError

GetJSON409 returns the response for an HTTP 409 `application/json` response

func (CreateWebhookResponse) GetJSON413 added in v0.2.0

func (r CreateWebhookResponse) GetJSON413() *ApiError

GetJSON413 returns the response for an HTTP 413 `application/json` response

func (CreateWebhookResponse) GetJSON415 added in v0.2.0

func (r CreateWebhookResponse) GetJSON415() *ApiError

GetJSON415 returns the response for an HTTP 415 `application/json` response

func (CreateWebhookResponse) GetJSON422

func (r CreateWebhookResponse) GetJSON422() *ApiError

GetJSON422 returns the response for an HTTP 422 `application/json` response

func (CreateWebhookResponse) GetJSON423

func (r CreateWebhookResponse) GetJSON423() *ApiError

GetJSON423 returns the response for an HTTP 423 `application/json` response

func (CreateWebhookResponse) GetJSON429

func (r CreateWebhookResponse) GetJSON429() *ApiError

GetJSON429 returns the response for an HTTP 429 `application/json` response

func (CreateWebhookResponse) GetJSON500

func (r CreateWebhookResponse) GetJSON500() *ApiError

GetJSON500 returns the response for an HTTP 500 `application/json` response

func (CreateWebhookResponse) GetJSON503

func (r CreateWebhookResponse) GetJSON503() *ApiError

GetJSON503 returns the response for an HTTP 503 `application/json` response

func (CreateWebhookResponse) Status

func (r CreateWebhookResponse) Status() string

Status returns HTTPResponse.Status

func (CreateWebhookResponse) StatusCode

func (r CreateWebhookResponse) StatusCode() int

StatusCode returns HTTPResponse.StatusCode

type CreateWebhookResponse200Headers

type CreateWebhookResponse200Headers struct {
	RateLimitLimit      *int
	RateLimitRemaining  *int
	RateLimitReset      *int
	ServerTiming        *string
	XEffectiveQuery     *string
	XQueryIgnored       *string
	XRateLimitLimit     *int
	XRateLimitRemaining *int
	XRateLimitReset     *int
	XRequestId          *string
	XUsageAccounting    *string
}

CreateWebhookResponse200Headers the declared response headers of an HTTP 200 response for CreateWebhook

type CreateWebhookResponse429Headers

type CreateWebhookResponse429Headers struct {
	RateLimitLimit      *int
	RateLimitRemaining  *int
	RateLimitReset      *int
	RetryAfter          *int
	XRateLimitLimit     *int
	XRateLimitRemaining *int
	XRateLimitReset     *int
	XRequestId          *string
}

CreateWebhookResponse429Headers the declared response headers of an HTTP 429 response for CreateWebhook

type CreateWebhookResponse503Headers

type CreateWebhookResponse503Headers struct {
	RetryAfter *int
	XRequestId *string
}

CreateWebhookResponse503Headers the declared response headers of an HTTP 503 response for CreateWebhook

type DataQuality added in v0.4.0

type DataQuality struct {
	// AsOf The oldest as_of among the groups that carry one: the age of the weakest clock this body rests on. Omitted when no group carries a clock.
	AsOf *time.Time `json:"as_of,omitempty"`

	// FieldGroups One entry per field group. Entries may be added in later releases, so match on group rather than on position or length.
	FieldGroups []DataQualityGroup `json:"field_groups"`

	// Status fresh when every group is fresh, unavailable when every group is unavailable, and partial in every other case.
	Status DataQualityStatus `json:"status"`
}

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.

type DataQualityAssessment added in v0.4.0

type DataQualityAssessment struct {
	// OK is true when at least one group was judged and every judged group
	// is fresh and within MaxAge.
	OK bool
	// Failing lists every judged group that did not pass, in response order.
	Failing []DataQualityFailure
	// Untracked lists the groups left out because they are "untracked".
	Untracked []string
	// OldestAsOf is the oldest as_of among the judged groups that carry one.
	OldestAsOf string
	// OldestAge is the age of OldestAsOf at Now; nil when no group has a clock.
	OldestAge *time.Duration
}

DataQualityAssessment is AssessDataQuality's verdict.

func AssessDataQuality added in v0.4.0

func AssessDataQuality(body []byte, opts DataQualityOptions) (DataQualityAssessment, error)

AssessDataQuality judges the data_quality block in body against opts.

resp, err := client.GetTraderWithResponse(ctx, "0xabc...", nil)
// handle err and a non-200 status first
verdict, err := oxinsider.AssessDataQuality(resp.Body, oxinsider.DataQualityOptions{MaxAge: 15 * time.Minute})
if err == nil && !verdict.OK {
	for _, f := range verdict.Failing {
		log.Println(f.Group, f.Status, f.Reason)
	}
}

type DataQualityFailure added in v0.4.0

type DataQualityFailure struct {
	Group string
	// Status is the group's status, or "missing" when a requested group is
	// absent.
	Status string
	// Reason is the server's reason when it gave one, otherwise why this
	// helper failed the group.
	Reason string
	// AsOf is the group's clock as sent, empty when it carries none.
	AsOf string
	// Age is how far AsOf sits before Now; nil when the group has no clock.
	Age *time.Duration
}

DataQualityFailure is one judged group that did not pass.

type DataQualityGroup added in v0.4.0

type DataQualityGroup struct {
	// AsOf When this group's values were observed or computed. Omitted whenever the read cannot measure it, and never filled with the serialization time, the cache time, or another group's clock.
	AsOf *time.Time `json:"as_of,omitempty"`

	// Group Stable snake_case group name. Names are additive across releases, so match on the ones you know and ignore the rest.
	Group string `json:"group"`

	// Owner The table and column that write this group, named so the verdict can be audited (for example trader_rankings.computed_at).
	Owner string `json:"owner"`

	// Reason Why the status is not fresh. Omitted when it is.
	Reason *string `json:"reason,omitempty"`

	// Status fresh: served, and as_of carries this group's real observation or computation clock. partial: some of the group's fields are served and some are missing. unknown: served, and this read has no clock for it, so no age may be inferred. untracked: 0xinsider does not track this group for this subject, by design. unavailable: the group could not be served. New values may be added; treat one you do not recognize as unknown. fresh means the group is tracked and clocked, not that it is inside any particular tolerance: compare as_of against your own.
	Status DataQualityGroupStatus `json:"status"`
}

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

type DataQualityGroupStatus added in v0.4.0

type DataQualityGroupStatus string

DataQualityGroupStatus fresh: served, and as_of carries this group's real observation or computation clock. partial: some of the group's fields are served and some are missing. unknown: served, and this read has no clock for it, so no age may be inferred. untracked: 0xinsider does not track this group for this subject, by design. unavailable: the group could not be served. New values may be added; treat one you do not recognize as unknown. fresh means the group is tracked and clocked, not that it is inside any particular tolerance: compare as_of against your own.

const (
	DataQualityGroupStatusFresh       DataQualityGroupStatus = "fresh"
	DataQualityGroupStatusPartial     DataQualityGroupStatus = "partial"
	DataQualityGroupStatusUnavailable DataQualityGroupStatus = "unavailable"
	DataQualityGroupStatusUnknown     DataQualityGroupStatus = "unknown"
	DataQualityGroupStatusUntracked   DataQualityGroupStatus = "untracked"
)

Defines values for DataQualityGroupStatus.

func (DataQualityGroupStatus) Valid added in v0.4.0

func (e DataQualityGroupStatus) Valid() bool

Valid indicates whether the value is a known member of the DataQualityGroupStatus enum.

type DataQualityOptions added in v0.4.0

type DataQualityOptions struct {
	// MaxAge is the oldest clock you accept. It must not be negative.
	MaxAge time.Duration
	// Groups limits the verdict to these groups. A named group the body does
	// not carry fails with status "missing", so a renamed or removed group
	// cannot pass silently. Empty: judge every group the body carries.
	Groups []string
	// Now is the instant to measure against. Zero means time.Now().
	Now time.Time
}

DataQualityOptions sets the tolerance AssessDataQuality applies.

type DataQualityStatus added in v0.4.0

type DataQualityStatus string

DataQualityStatus fresh when every group is fresh, unavailable when every group is unavailable, and partial in every other case.

const (
	DataQualityStatusFresh       DataQualityStatus = "fresh"
	DataQualityStatusPartial     DataQualityStatus = "partial"
	DataQualityStatusUnavailable DataQualityStatus = "unavailable"
	DataQualityStatusUnknown     DataQualityStatus = "unknown"
	DataQualityStatusUntracked   DataQualityStatus = "untracked"
)

Defines values for DataQualityStatus.

func (DataQualityStatus) Valid added in v0.4.0

func (e DataQualityStatus) Valid() bool

Valid indicates whether the value is a known member of the DataQualityStatus enum.

type DeleteWebhook200JSONResponseBodyObject

type DeleteWebhook200JSONResponseBodyObject string

DeleteWebhook200JSONResponseBodyObject defines parameters for DeleteWebhook.

const (
	DeleteWebhook200JSONResponseBodyObjectWebhook DeleteWebhook200JSONResponseBodyObject = "webhook"
)

Defines values for DeleteWebhook200JSONResponseBodyObject.

func (DeleteWebhook200JSONResponseBodyObject) Valid

Valid indicates whether the value is a known member of the DeleteWebhook200JSONResponseBodyObject enum.

type DeleteWebhookParams

type DeleteWebhookParams struct {
	// XQueryValidation Opt into strict query-name validation. The default is compatible: unknown names are ignored and reported in X-Query-Ignored. With strict, an unknown name returns 400 bad_request with error.reason unknown_query_parameter before the handler runs, including when its percent escape is incomplete.
	XQueryValidation *DeleteWebhookParamsXQueryValidation `json:"X-Query-Validation,omitempty"`

	// IdempotencyKey Optional safe-retry key. Reuse the same value only when retrying the exact same mutation request body; a different body returns 422 and an in-flight matching request returns 409.
	IdempotencyKey *string `json:"Idempotency-Key,omitempty"`
}

DeleteWebhookParams defines parameters for DeleteWebhook.

type DeleteWebhookParamsXQueryValidation added in v0.3.0

type DeleteWebhookParamsXQueryValidation string

DeleteWebhookParamsXQueryValidation defines parameters for DeleteWebhook.

const (
	DeleteWebhookParamsXQueryValidationStrict DeleteWebhookParamsXQueryValidation = "strict"
)

Defines values for DeleteWebhookParamsXQueryValidation.

func (DeleteWebhookParamsXQueryValidation) Valid added in v0.3.0

Valid indicates whether the value is a known member of the DeleteWebhookParamsXQueryValidation enum.

type DeleteWebhookResponse

type DeleteWebhookResponse struct {
	Body         []byte
	HTTPResponse *http.Response
	// JSON200 the response for an HTTP 200 `application/json` response
	JSON200 *struct {
		Data   WebhookEndpoint                        `json:"data"`
		Meta   ResponseMeta                           `json:"meta"`
		Object DeleteWebhook200JSONResponseBodyObject `json:"object"`
	}
	// JSON401 the response for an HTTP 401 `application/json` response
	JSON401 *ApiError
	// JSON402 the response for an HTTP 402 `application/json` response
	JSON402 *ApiError
	// JSON403 the response for an HTTP 403 `application/json` response
	JSON403 *ApiError
	// JSON404 the response for an HTTP 404 `application/json` response
	JSON404 *ApiError
	// JSON408 the response for an HTTP 408 `application/json` response
	JSON408 *ApiError
	// JSON409 the response for an HTTP 409 `application/json` response
	JSON409 *ApiError
	// JSON422 the response for an HTTP 422 `application/json` response
	JSON422 *ApiError
	// JSON423 the response for an HTTP 423 `application/json` response
	JSON423 *ApiError
	// JSON429 the response for an HTTP 429 `application/json` response
	JSON429 *ApiError
	// JSON500 the response for an HTTP 500 `application/json` response
	JSON500 *ApiError
	// JSON503 the response for an HTTP 503 `application/json` response
	JSON503 *ApiError
	// Headers200 the parsed response headers for an HTTP 200 response
	Headers200 *DeleteWebhookResponse200Headers
	// Headers429 the parsed response headers for an HTTP 429 response
	Headers429 *DeleteWebhookResponse429Headers
	// Headers503 the parsed response headers for an HTTP 503 response
	Headers503 *DeleteWebhookResponse503Headers
}

func ParseDeleteWebhookResponse

func ParseDeleteWebhookResponse(rsp *http.Response) (*DeleteWebhookResponse, error)

ParseDeleteWebhookResponse parses an HTTP response from a DeleteWebhookWithResponse call

func (DeleteWebhookResponse) ContentType

func (r DeleteWebhookResponse) ContentType() string

ContentType is a convenience method to retrieve the Content-Type value from the HTTP response headers

func (DeleteWebhookResponse) GetBody

func (r DeleteWebhookResponse) GetBody() []byte

GetBody returns the raw response body bytes

func (DeleteWebhookResponse) GetJSON200

func (r DeleteWebhookResponse) GetJSON200() *struct {
	Data   WebhookEndpoint                        `json:"data"`
	Meta   ResponseMeta                           `json:"meta"`
	Object DeleteWebhook200JSONResponseBodyObject `json:"object"`
}

GetJSON200 returns the response for an HTTP 200 `application/json` response

func (DeleteWebhookResponse) GetJSON401

func (r DeleteWebhookResponse) GetJSON401() *ApiError

GetJSON401 returns the response for an HTTP 401 `application/json` response

func (DeleteWebhookResponse) GetJSON402

func (r DeleteWebhookResponse) GetJSON402() *ApiError

GetJSON402 returns the response for an HTTP 402 `application/json` response

func (DeleteWebhookResponse) GetJSON403

func (r DeleteWebhookResponse) GetJSON403() *ApiError

GetJSON403 returns the response for an HTTP 403 `application/json` response

func (DeleteWebhookResponse) GetJSON404

func (r DeleteWebhookResponse) GetJSON404() *ApiError

GetJSON404 returns the response for an HTTP 404 `application/json` response

func (DeleteWebhookResponse) GetJSON408 added in v0.2.0

func (r DeleteWebhookResponse) GetJSON408() *ApiError

GetJSON408 returns the response for an HTTP 408 `application/json` response

func (DeleteWebhookResponse) GetJSON409

func (r DeleteWebhookResponse) GetJSON409() *ApiError

GetJSON409 returns the response for an HTTP 409 `application/json` response

func (DeleteWebhookResponse) GetJSON422

func (r DeleteWebhookResponse) GetJSON422() *ApiError

GetJSON422 returns the response for an HTTP 422 `application/json` response

func (DeleteWebhookResponse) GetJSON423

func (r DeleteWebhookResponse) GetJSON423() *ApiError

GetJSON423 returns the response for an HTTP 423 `application/json` response

func (DeleteWebhookResponse) GetJSON429

func (r DeleteWebhookResponse) GetJSON429() *ApiError

GetJSON429 returns the response for an HTTP 429 `application/json` response

func (DeleteWebhookResponse) GetJSON500

func (r DeleteWebhookResponse) GetJSON500() *ApiError

GetJSON500 returns the response for an HTTP 500 `application/json` response

func (DeleteWebhookResponse) GetJSON503

func (r DeleteWebhookResponse) GetJSON503() *ApiError

GetJSON503 returns the response for an HTTP 503 `application/json` response

func (DeleteWebhookResponse) Status

func (r DeleteWebhookResponse) Status() string

Status returns HTTPResponse.Status

func (DeleteWebhookResponse) StatusCode

func (r DeleteWebhookResponse) StatusCode() int

StatusCode returns HTTPResponse.StatusCode

type DeleteWebhookResponse200Headers

type DeleteWebhookResponse200Headers struct {
	RateLimitLimit      *int
	RateLimitRemaining  *int
	RateLimitReset      *int
	ServerTiming        *string
	XEffectiveQuery     *string
	XQueryIgnored       *string
	XRateLimitLimit     *int
	XRateLimitRemaining *int
	XRateLimitReset     *int
	XRequestId          *string
	XUsageAccounting    *string
}

DeleteWebhookResponse200Headers the declared response headers of an HTTP 200 response for DeleteWebhook

type DeleteWebhookResponse429Headers

type DeleteWebhookResponse429Headers struct {
	RateLimitLimit      *int
	RateLimitRemaining  *int
	RateLimitReset      *int
	RetryAfter          *int
	XRateLimitLimit     *int
	XRateLimitRemaining *int
	XRateLimitReset     *int
	XRequestId          *string
}

DeleteWebhookResponse429Headers the declared response headers of an HTTP 429 response for DeleteWebhook

type DeleteWebhookResponse503Headers

type DeleteWebhookResponse503Headers struct {
	RetryAfter *int
	XRequestId *string
}

DeleteWebhookResponse503Headers the declared response headers of an HTTP 503 response for DeleteWebhook

type DownloadTraderExportParams

type DownloadTraderExportParams struct {
	// JobId Export job id returned by the submit route.
	JobId int64 `form:"job_id" json:"job_id"`

	// XQueryValidation Opt into strict query-name validation. The default is compatible: unknown names are ignored and reported in X-Query-Ignored. With strict, an unknown name returns 400 bad_request with error.reason unknown_query_parameter before the handler runs, including when its percent escape is incomplete.
	XQueryValidation *DownloadTraderExportParamsXQueryValidation `json:"X-Query-Validation,omitempty"`
}

DownloadTraderExportParams defines parameters for DownloadTraderExport.

type DownloadTraderExportParamsXQueryValidation added in v0.3.0

type DownloadTraderExportParamsXQueryValidation string

DownloadTraderExportParamsXQueryValidation defines parameters for DownloadTraderExport.

const (
	DownloadTraderExportParamsXQueryValidationStrict DownloadTraderExportParamsXQueryValidation = "strict"
)

Defines values for DownloadTraderExportParamsXQueryValidation.

func (DownloadTraderExportParamsXQueryValidation) Valid added in v0.3.0

Valid indicates whether the value is a known member of the DownloadTraderExportParamsXQueryValidation enum.

type DownloadTraderExportResponse

type DownloadTraderExportResponse struct {
	Body         []byte
	HTTPResponse *http.Response
	// JSON400 the response for an HTTP 400 `application/json` response
	JSON400 *ApiError
	// JSON401 the response for an HTTP 401 `application/json` response
	JSON401 *ApiError
	// JSON402 the response for an HTTP 402 `application/json` response
	JSON402 *ApiError
	// JSON403 the response for an HTTP 403 `application/json` response
	JSON403 *ApiError
	// JSON404 the response for an HTTP 404 `application/json` response
	JSON404 *ApiError
	// JSON408 the response for an HTTP 408 `application/json` response
	JSON408 *ApiError
	// JSON410 the response for an HTTP 410 `application/json` response
	JSON410 *ApiError
	// JSON423 the response for an HTTP 423 `application/json` response
	JSON423 *ApiError
	// JSON429 the response for an HTTP 429 `application/json` response
	JSON429 *ApiError
	// JSON500 the response for an HTTP 500 `application/json` response
	JSON500 *ApiError
	// JSON503 the response for an HTTP 503 `application/json` response
	JSON503 *ApiError
	// Headers302 the parsed response headers for an HTTP 302 response
	Headers302 *DownloadTraderExportResponse302Headers
	// Headers429 the parsed response headers for an HTTP 429 response
	Headers429 *DownloadTraderExportResponse429Headers
	// Headers503 the parsed response headers for an HTTP 503 response
	Headers503 *DownloadTraderExportResponse503Headers
}

func ParseDownloadTraderExportResponse

func ParseDownloadTraderExportResponse(rsp *http.Response) (*DownloadTraderExportResponse, error)

ParseDownloadTraderExportResponse parses an HTTP response from a DownloadTraderExportWithResponse call

func (DownloadTraderExportResponse) ContentType

func (r DownloadTraderExportResponse) ContentType() string

ContentType is a convenience method to retrieve the Content-Type value from the HTTP response headers

func (DownloadTraderExportResponse) GetBody

func (r DownloadTraderExportResponse) GetBody() []byte

GetBody returns the raw response body bytes

func (DownloadTraderExportResponse) GetJSON400

func (r DownloadTraderExportResponse) GetJSON400() *ApiError

GetJSON400 returns the response for an HTTP 400 `application/json` response

func (DownloadTraderExportResponse) GetJSON401

func (r DownloadTraderExportResponse) GetJSON401() *ApiError

GetJSON401 returns the response for an HTTP 401 `application/json` response

func (DownloadTraderExportResponse) GetJSON402

func (r DownloadTraderExportResponse) GetJSON402() *ApiError

GetJSON402 returns the response for an HTTP 402 `application/json` response

func (DownloadTraderExportResponse) GetJSON403

func (r DownloadTraderExportResponse) GetJSON403() *ApiError

GetJSON403 returns the response for an HTTP 403 `application/json` response

func (DownloadTraderExportResponse) GetJSON404

func (r DownloadTraderExportResponse) GetJSON404() *ApiError

GetJSON404 returns the response for an HTTP 404 `application/json` response

func (DownloadTraderExportResponse) GetJSON408 added in v0.2.0

func (r DownloadTraderExportResponse) GetJSON408() *ApiError

GetJSON408 returns the response for an HTTP 408 `application/json` response

func (DownloadTraderExportResponse) GetJSON410 added in v0.4.0

func (r DownloadTraderExportResponse) GetJSON410() *ApiError

GetJSON410 returns the response for an HTTP 410 `application/json` response

func (DownloadTraderExportResponse) GetJSON423

func (r DownloadTraderExportResponse) GetJSON423() *ApiError

GetJSON423 returns the response for an HTTP 423 `application/json` response

func (DownloadTraderExportResponse) GetJSON429

func (r DownloadTraderExportResponse) GetJSON429() *ApiError

GetJSON429 returns the response for an HTTP 429 `application/json` response

func (DownloadTraderExportResponse) GetJSON500

func (r DownloadTraderExportResponse) GetJSON500() *ApiError

GetJSON500 returns the response for an HTTP 500 `application/json` response

func (DownloadTraderExportResponse) GetJSON503

func (r DownloadTraderExportResponse) GetJSON503() *ApiError

GetJSON503 returns the response for an HTTP 503 `application/json` response

func (DownloadTraderExportResponse) Status

Status returns HTTPResponse.Status

func (DownloadTraderExportResponse) StatusCode

func (r DownloadTraderExportResponse) StatusCode() int

StatusCode returns HTTPResponse.StatusCode

type DownloadTraderExportResponse302Headers

type DownloadTraderExportResponse302Headers struct {
	Location            string
	RateLimitLimit      *int
	RateLimitRemaining  *int
	RateLimitReset      *int
	ServerTiming        *string
	XRateLimitLimit     *int
	XRateLimitRemaining *int
	XRateLimitReset     *int
	XRequestId          *string
	XUsageAccounting    *string
}

DownloadTraderExportResponse302Headers the declared response headers of an HTTP 302 response for DownloadTraderExport

type DownloadTraderExportResponse429Headers

type DownloadTraderExportResponse429Headers struct {
	RateLimitLimit      *int
	RateLimitRemaining  *int
	RateLimitReset      *int
	RetryAfter          *int
	XRateLimitLimit     *int
	XRateLimitRemaining *int
	XRateLimitReset     *int
	XRequestId          *string
}

DownloadTraderExportResponse429Headers the declared response headers of an HTTP 429 response for DownloadTraderExport

type DownloadTraderExportResponse503Headers

type DownloadTraderExportResponse503Headers struct {
	RetryAfter *int
	XRequestId *string
}

DownloadTraderExportResponse503Headers the declared response headers of an HTTP 503 response for DownloadTraderExport

type DownloadWhaleDatasetResponse added in v0.4.0

type DownloadWhaleDatasetResponse struct {
	Body         []byte
	HTTPResponse *http.Response
	// JSON400 the response for an HTTP 400 `application/json` response
	JSON400 *ApiError
	// JSON401 the response for an HTTP 401 `application/json` response
	JSON401 *ApiError
	// JSON402 the response for an HTTP 402 `application/json` response
	JSON402 *ApiError
	// JSON403 the response for an HTTP 403 `application/json` response
	JSON403 *ApiError
	// JSON404 the response for an HTTP 404 `application/json` response
	JSON404 *ApiError
	// JSON408 the response for an HTTP 408 `application/json` response
	JSON408 *ApiError
	// JSON410 the response for an HTTP 410 `application/json` response
	JSON410 *ApiError
	// JSON423 the response for an HTTP 423 `application/json` response
	JSON423 *ApiError
	// JSON429 the response for an HTTP 429 `application/json` response
	JSON429 *ApiError
	// JSON500 the response for an HTTP 500 `application/json` response
	JSON500 *ApiError
	// JSON503 the response for an HTTP 503 `application/json` response
	JSON503 *ApiError
	// Headers302 the parsed response headers for an HTTP 302 response
	Headers302 *DownloadWhaleDatasetResponse302Headers
	// Headers429 the parsed response headers for an HTTP 429 response
	Headers429 *DownloadWhaleDatasetResponse429Headers
	// Headers503 the parsed response headers for an HTTP 503 response
	Headers503 *DownloadWhaleDatasetResponse503Headers
}

func ParseDownloadWhaleDatasetResponse added in v0.4.0

func ParseDownloadWhaleDatasetResponse(rsp *http.Response) (*DownloadWhaleDatasetResponse, error)

ParseDownloadWhaleDatasetResponse parses an HTTP response from a DownloadWhaleDatasetWithResponse call

func (DownloadWhaleDatasetResponse) ContentType added in v0.4.0

func (r DownloadWhaleDatasetResponse) ContentType() string

ContentType is a convenience method to retrieve the Content-Type value from the HTTP response headers

func (DownloadWhaleDatasetResponse) GetBody added in v0.4.0

func (r DownloadWhaleDatasetResponse) GetBody() []byte

GetBody returns the raw response body bytes

func (DownloadWhaleDatasetResponse) GetJSON400 added in v0.4.0

func (r DownloadWhaleDatasetResponse) GetJSON400() *ApiError

GetJSON400 returns the response for an HTTP 400 `application/json` response

func (DownloadWhaleDatasetResponse) GetJSON401 added in v0.4.0

func (r DownloadWhaleDatasetResponse) GetJSON401() *ApiError

GetJSON401 returns the response for an HTTP 401 `application/json` response

func (DownloadWhaleDatasetResponse) GetJSON402 added in v0.4.0

func (r DownloadWhaleDatasetResponse) GetJSON402() *ApiError

GetJSON402 returns the response for an HTTP 402 `application/json` response

func (DownloadWhaleDatasetResponse) GetJSON403 added in v0.4.0

func (r DownloadWhaleDatasetResponse) GetJSON403() *ApiError

GetJSON403 returns the response for an HTTP 403 `application/json` response

func (DownloadWhaleDatasetResponse) GetJSON404 added in v0.4.0

func (r DownloadWhaleDatasetResponse) GetJSON404() *ApiError

GetJSON404 returns the response for an HTTP 404 `application/json` response

func (DownloadWhaleDatasetResponse) GetJSON408 added in v0.4.0

func (r DownloadWhaleDatasetResponse) GetJSON408() *ApiError

GetJSON408 returns the response for an HTTP 408 `application/json` response

func (DownloadWhaleDatasetResponse) GetJSON410 added in v0.4.0

func (r DownloadWhaleDatasetResponse) GetJSON410() *ApiError

GetJSON410 returns the response for an HTTP 410 `application/json` response

func (DownloadWhaleDatasetResponse) GetJSON423 added in v0.4.0

func (r DownloadWhaleDatasetResponse) GetJSON423() *ApiError

GetJSON423 returns the response for an HTTP 423 `application/json` response

func (DownloadWhaleDatasetResponse) GetJSON429 added in v0.4.0

func (r DownloadWhaleDatasetResponse) GetJSON429() *ApiError

GetJSON429 returns the response for an HTTP 429 `application/json` response

func (DownloadWhaleDatasetResponse) GetJSON500 added in v0.4.0

func (r DownloadWhaleDatasetResponse) GetJSON500() *ApiError

GetJSON500 returns the response for an HTTP 500 `application/json` response

func (DownloadWhaleDatasetResponse) GetJSON503 added in v0.4.0

func (r DownloadWhaleDatasetResponse) GetJSON503() *ApiError

GetJSON503 returns the response for an HTTP 503 `application/json` response

func (DownloadWhaleDatasetResponse) Status added in v0.4.0

Status returns HTTPResponse.Status

func (DownloadWhaleDatasetResponse) StatusCode added in v0.4.0

func (r DownloadWhaleDatasetResponse) StatusCode() int

StatusCode returns HTTPResponse.StatusCode

type DownloadWhaleDatasetResponse302Headers added in v0.4.0

type DownloadWhaleDatasetResponse302Headers struct {
	Location *string
}

DownloadWhaleDatasetResponse302Headers the declared response headers of an HTTP 302 response for DownloadWhaleDataset

type DownloadWhaleDatasetResponse429Headers added in v0.4.0

type DownloadWhaleDatasetResponse429Headers struct {
	RateLimitLimit      *int
	RateLimitRemaining  *int
	RateLimitReset      *int
	RetryAfter          *int
	XRateLimitLimit     *int
	XRateLimitRemaining *int
	XRateLimitReset     *int
	XRequestId          *string
}

DownloadWhaleDatasetResponse429Headers the declared response headers of an HTTP 429 response for DownloadWhaleDataset

type DownloadWhaleDatasetResponse503Headers added in v0.4.0

type DownloadWhaleDatasetResponse503Headers struct {
	RetryAfter *int
	XRequestId *string
}

DownloadWhaleDatasetResponse503Headers the declared response headers of an HTTP 503 response for DownloadWhaleDataset

type EventReplayEvent

type EventReplayEvent struct {
	// Cursor Cursor positioned at this event: its (inserted_xid, id) commit-order position. Store the page's next_cursor to continue; this one resumes from exactly this event.
	Cursor    string               `json:"cursor"`
	Freshness EventReplayFreshness `json:"freshness"`

	// Id Opaque event identity: the ef_-encoded whale_alerts.id, stable across cursor formats. Deduplicate on this, never on cursor or sequence.
	Id string `json:"id"`

	// Payload What the event announces. Every field is present on every event; a field added later is additive, so a client tolerates keys it does not know.
	Payload     EventReplayEvent_Payload `json:"payload"`
	PublishedAt time.Time                `json:"published_at"`

	// Sequence whale_alerts.id of the event. Not monotonic across a replay: events arrive in commit order, so a lower id can follow a higher one when its write finished later. Order and resume by cursor, deduplicate by id.
	Sequence int               `json:"sequence"`
	Source   EventReplaySource `json:"source"`

	// Trade Present only with expand=trade: the base trade fields for this row, read at request time from one query per page. GET /api/v1/large-trades/{id} adds counterparty_analysis; replay does not include it. traded_at, side, size_usd, price, outcome, token_id, recorded_signal_score and trader.grade_at_trade with its status are the row's event-time facts; trader.grade, trader.username, signal_score, suspicion_score, suspicion_track and market title/slug/category are enrichment that can move after the event. null when that route would answer 404 for the row (its trader or market is not synced yet).
	Trade *LargeTrade          `json:"trade,omitempty"`
	Type  EventReplayEventType `json:"type"`
}

EventReplayEvent defines model for EventReplayEvent.

type EventReplayEventPayloadPlatform added in v0.3.0

type EventReplayEventPayloadPlatform string

EventReplayEventPayloadPlatform Provider discriminator. Polymarket only.

const (
	EventReplayEventPayloadPlatformPolymarket EventReplayEventPayloadPlatform = "polymarket"
)

Defines values for EventReplayEventPayloadPlatform.

func (EventReplayEventPayloadPlatform) Valid added in v0.3.0

Valid indicates whether the value is a known member of the EventReplayEventPayloadPlatform enum.

type EventReplayEventType

type EventReplayEventType string

EventReplayEventType defines model for EventReplayEvent.Type.

const (
	EventReplayEventTypeWhaleTradesInserted EventReplayEventType = "whale_trades_inserted"
)

Defines values for EventReplayEventType.

func (EventReplayEventType) Valid

func (e EventReplayEventType) Valid() bool

Valid indicates whether the value is a known member of the EventReplayEventType enum.

type EventReplayEvent_Payload added in v0.3.0

type EventReplayEvent_Payload struct {
	// ConditionId The Polymarket condition id of the market the trade was in.
	ConditionId string `json:"condition_id"`

	// Count Whale trades this event announces. One event is minted per stored whale trade, so this is 1.
	Count int `json:"count"`

	// Platform Provider discriminator. Polymarket only.
	Platform EventReplayEventPayloadPlatform `json:"platform"`

	// TraderId 0xinsider's numeric id for the wallet's trader row. It is not the trd_ id, which is derived from the address; read the address and grade from the whale trade.
	TraderId int `json:"trader_id"`

	// WhaleAlertId The raw whale_alerts.id of the trade, the same number as sequence. GET /api/v1/whale-trades/{id} accepts it and returns the trade with its wallet, grade, size, price and market.
	WhaleAlertId         int                    `json:"whale_alert_id"`
	AdditionalProperties map[string]interface{} `json:"-"`
}

EventReplayEvent_Payload What the event announces. Every field is present on every event; a field added later is additive, so a client tolerates keys it does not know.

func (EventReplayEvent_Payload) Get added in v0.3.0

func (a EventReplayEvent_Payload) Get(fieldName string) (value interface{}, found bool)

Getter for additional properties for EventReplayEvent_Payload. Returns the specified element and whether it was found

func (EventReplayEvent_Payload) MarshalJSON added in v0.3.0

func (a EventReplayEvent_Payload) MarshalJSON() ([]byte, error)

Override default JSON handling for EventReplayEvent_Payload to handle AdditionalProperties

func (*EventReplayEvent_Payload) Set added in v0.3.0

func (a *EventReplayEvent_Payload) Set(fieldName string, value interface{})

Setter for additional properties for EventReplayEvent_Payload

func (*EventReplayEvent_Payload) UnmarshalJSON added in v0.3.0

func (a *EventReplayEvent_Payload) UnmarshalJSON(b []byte) error

Override default JSON handling for EventReplayEvent_Payload to handle AdditionalProperties

type EventReplayFreshness

type EventReplayFreshness struct {
	ObservedAt time.Time                  `json:"observed_at"`
	Status     EventReplayFreshnessStatus `json:"status"`
}

EventReplayFreshness defines model for EventReplayFreshness.

type EventReplayFreshnessStatus

type EventReplayFreshnessStatus string

EventReplayFreshnessStatus defines model for EventReplayFreshness.Status.

const (
	Observed EventReplayFreshnessStatus = "observed"
)

Defines values for EventReplayFreshnessStatus.

func (EventReplayFreshnessStatus) Valid

func (e EventReplayFreshnessStatus) Valid() bool

Valid indicates whether the value is a known member of the EventReplayFreshnessStatus enum.

type EventReplayMeta

type EventReplayMeta struct {
	CacheAgeS    *int `json:"cache_age_s,omitempty"`
	Cached       bool `json:"cached"`
	Completeness struct {
		Reason string `json:"reason"`

		// Status complete: the page carries every durable event matching the filters after the cursor below the commit horizon, up to limit. caught_up: nothing matching after the cursor is visible below the horizon; read pending_beyond_horizon to tell an idle stream from held rows, and note next_cursor has still advanced to the horizon.
		Status EventReplayMetaCompletenessStatus `json:"status"`
	} `json:"completeness"`

	// Cost Advisory request weight (relative compute cost). 1 for simple reads; higher for heavier endpoints. Not a credit/price.
	Cost   int `json:"cost"`
	Replay struct {
		// Expand The expansions applied to every event on this page; empty when none.
		Expand []EventReplayMetaReplayExpand `json:"expand"`

		// Filters The effective filter set this page ran with and next_cursor is bound to. Absent on an unfiltered walk.
		Filters *struct {
			// ConditionId The raw provider condition id after mkt_ is stripped.
			ConditionId *string                               `json:"condition_id,omitempty"`
			MinGrade    *EventReplayMetaReplayFiltersMinGrade `json:"min_grade,omitempty"`
			MinSize     *float32                              `json:"min_size,omitempty"`

			// Trader The trader parameter as given.
			Trader *string `json:"trader,omitempty"`
		} `json:"filters,omitempty"`

		// FromCursor The request cursor in canonical form (an id-only cursor is re-encoded), or the zero position when omitted.
		FromCursor string `json:"from_cursor"`

		// FromSequence whale_alerts.id component of the request cursor (0 when omitted).
		FromSequence int `json:"from_sequence"`

		// Ordering Events are ordered by the position at which their write became visible (whale_alerts.inserted_xid), then by whale_alerts.id, and a page is bounded by the oldest write transaction still open when it was read. Before 2026-09-22 this read whale_alerts_id_asc; that order could skip a late-committing lower id (#16180).
		Ordering EventReplayMetaReplayOrdering `json:"ordering"`

		// PendingBeyondHorizon True when committed whale-trade rows newer than this page's commit-visibility horizon exist. They are held until every older write transaction has finished and are served on a later request, so a caught_up page with this true is not the end of the stream: poll again. A long open write transaction on the database (a single-transaction backfill) is what keeps this true for more than a few seconds.
		PendingBeyondHorizon bool `json:"pending_beyond_horizon"`

		// ToCursor Identical to next_cursor. After a full page, the cursor of the last event; after a page that is not full, the commit horizon itself, since every row below it, matching or not, has been examined. An empty page therefore still advances.
		ToCursor string `json:"to_cursor"`

		// ToSequence whale_alerts.id of the last event on this page, or from_sequence when the page is empty. Can sit below the position next_cursor encodes after a page that is not full.
		ToSequence int `json:"to_sequence"`
	} `json:"replay"`

	// RequestId Unique request ID (req_ prefix). The same value as the X-Request-Id response header, the request's usage accounting row and its log lines.
	RequestId string `json:"request_id"`
	Retention struct {
		CursorExpired  EventReplayMetaRetentionCursorExpired `json:"cursor_expired"`
		RetainedEvents int                                   `json:"retained_events"`
		Status         EventReplayMetaRetentionStatus        `json:"status"`
	} `json:"retention"`
}

EventReplayMeta defines model for EventReplayMeta.

type EventReplayMetaCompletenessStatus

type EventReplayMetaCompletenessStatus string

EventReplayMetaCompletenessStatus complete: the page carries every durable event matching the filters after the cursor below the commit horizon, up to limit. caught_up: nothing matching after the cursor is visible below the horizon; read pending_beyond_horizon to tell an idle stream from held rows, and note next_cursor has still advanced to the horizon.

const (
	EventReplayMetaCompletenessStatusCaughtUp EventReplayMetaCompletenessStatus = "caught_up"
	EventReplayMetaCompletenessStatusComplete EventReplayMetaCompletenessStatus = "complete"
)

Defines values for EventReplayMetaCompletenessStatus.

func (EventReplayMetaCompletenessStatus) Valid

Valid indicates whether the value is a known member of the EventReplayMetaCompletenessStatus enum.

type EventReplayMetaReplayExpand added in v0.3.0

type EventReplayMetaReplayExpand string

EventReplayMetaReplayExpand defines model for EventReplayMeta.Replay.Expand.

const (
	EventReplayMetaReplayExpandTrade EventReplayMetaReplayExpand = "trade"
)

Defines values for EventReplayMetaReplayExpand.

func (EventReplayMetaReplayExpand) Valid added in v0.3.0

Valid indicates whether the value is a known member of the EventReplayMetaReplayExpand enum.

type EventReplayMetaReplayFiltersMinGrade added in v0.3.0

type EventReplayMetaReplayFiltersMinGrade string

EventReplayMetaReplayFiltersMinGrade defines model for EventReplayMeta.Replay.Filters.MinGrade.

const (
	EventReplayMetaReplayFiltersMinGradeA EventReplayMetaReplayFiltersMinGrade = "A"
	EventReplayMetaReplayFiltersMinGradeB EventReplayMetaReplayFiltersMinGrade = "B"
	EventReplayMetaReplayFiltersMinGradeC EventReplayMetaReplayFiltersMinGrade = "C"
	EventReplayMetaReplayFiltersMinGradeD EventReplayMetaReplayFiltersMinGrade = "D"
	EventReplayMetaReplayFiltersMinGradeF EventReplayMetaReplayFiltersMinGrade = "F"
	EventReplayMetaReplayFiltersMinGradeS EventReplayMetaReplayFiltersMinGrade = "S"
)

Defines values for EventReplayMetaReplayFiltersMinGrade.

func (EventReplayMetaReplayFiltersMinGrade) Valid added in v0.3.0

Valid indicates whether the value is a known member of the EventReplayMetaReplayFiltersMinGrade enum.

type EventReplayMetaReplayOrdering

type EventReplayMetaReplayOrdering string

EventReplayMetaReplayOrdering Events are ordered by the position at which their write became visible (whale_alerts.inserted_xid), then by whale_alerts.id, and a page is bounded by the oldest write transaction still open when it was read. Before 2026-09-22 this read whale_alerts_id_asc; that order could skip a late-committing lower id (#16180).

const (
	CommitVisibilityThenIdAsc EventReplayMetaReplayOrdering = "commit_visibility_then_id_asc"
)

Defines values for EventReplayMetaReplayOrdering.

func (EventReplayMetaReplayOrdering) Valid

Valid indicates whether the value is a known member of the EventReplayMetaReplayOrdering enum.

type EventReplayMetaRetentionCursorExpired

type EventReplayMetaRetentionCursorExpired bool

EventReplayMetaRetentionCursorExpired defines model for EventReplayMeta.Retention.CursorExpired.

const (
	EventReplayMetaRetentionCursorExpiredFalse EventReplayMetaRetentionCursorExpired = false
)

Defines values for EventReplayMetaRetentionCursorExpired.

func (EventReplayMetaRetentionCursorExpired) Valid

Valid indicates whether the value is a known member of the EventReplayMetaRetentionCursorExpired enum.

type EventReplayMetaRetentionStatus

type EventReplayMetaRetentionStatus string

EventReplayMetaRetentionStatus defines model for EventReplayMeta.Retention.Status.

const (
	DurableDatabase EventReplayMetaRetentionStatus = "durable_database"
)

Defines values for EventReplayMetaRetentionStatus.

func (EventReplayMetaRetentionStatus) Valid

Valid indicates whether the value is a known member of the EventReplayMetaRetentionStatus enum.

type EventReplaySource

type EventReplaySource struct {
	Kind                       EventReplaySourceKind                       `json:"kind"`
	Owner                      EventReplaySourceOwner                      `json:"owner"`
	ProducerFamily             EventReplaySourceProducerFamily             `json:"producer_family"`
	ProviderFetchAtRequestTime EventReplaySourceProviderFetchAtRequestTime `json:"provider_fetch_at_request_time"`
}

EventReplaySource defines model for EventReplaySource.

type EventReplaySourceKind

type EventReplaySourceKind string

EventReplaySourceKind defines model for EventReplaySource.Kind.

const (
	LocalDurableReplay EventReplaySourceKind = "local_durable_replay"
)

Defines values for EventReplaySourceKind.

func (EventReplaySourceKind) Valid

func (e EventReplaySourceKind) Valid() bool

Valid indicates whether the value is a known member of the EventReplaySourceKind enum.

type EventReplaySourceOwner

type EventReplaySourceOwner string

EventReplaySourceOwner defines model for EventReplaySource.Owner.

const (
	EventReplaySourceOwnerWhaleAlerts EventReplaySourceOwner = "whale_alerts"
)

Defines values for EventReplaySourceOwner.

func (EventReplaySourceOwner) Valid

func (e EventReplaySourceOwner) Valid() bool

Valid indicates whether the value is a known member of the EventReplaySourceOwner enum.

type EventReplaySourceProducerFamily

type EventReplaySourceProducerFamily string

EventReplaySourceProducerFamily defines model for EventReplaySource.ProducerFamily.

const (
	WhaleTrades EventReplaySourceProducerFamily = "whale_trades"
)

Defines values for EventReplaySourceProducerFamily.

func (EventReplaySourceProducerFamily) Valid

Valid indicates whether the value is a known member of the EventReplaySourceProducerFamily enum.

type EventReplaySourceProviderFetchAtRequestTime

type EventReplaySourceProviderFetchAtRequestTime bool

EventReplaySourceProviderFetchAtRequestTime defines model for EventReplaySource.ProviderFetchAtRequestTime.

const (
	EventReplaySourceProviderFetchAtRequestTimeFalse EventReplaySourceProviderFetchAtRequestTime = false
)

Defines values for EventReplaySourceProviderFetchAtRequestTime.

func (EventReplaySourceProviderFetchAtRequestTime) Valid

Valid indicates whether the value is a known member of the EventReplaySourceProviderFetchAtRequestTime enum.

type ExactDecimal added in v0.4.0

type ExactDecimal struct {
	// Basis Backend-owned source or derivation basis. Treat it as provenance, not as a display label.
	Basis string `json:"basis"`

	// Scale Number of digits after the decimal point in `value`'s source atom.
	Scale int `json:"scale"`

	// Unit Unit of the value, such as `USD`, `USD/share`, or `shares`.
	Unit string `json:"unit"`

	// Value Plain decimal text at full source precision, including a minus sign for negative values and trailing zeros when the source scale carries them. Parse as an arbitrary-precision decimal.
	Value string `json:"value"`
}

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.

type ExploreEntry

type ExploreEntry struct {
	// contains filtered or unexported fields
}

ExploreEntry defines model for ExploreEntry.

func (ExploreEntry) AsExploreGroup

func (t ExploreEntry) AsExploreGroup() (ExploreGroup, error)

AsExploreGroup returns the union data inside the ExploreEntry as a ExploreGroup

func (ExploreEntry) AsExploreStandalone

func (t ExploreEntry) AsExploreStandalone() (ExploreStandalone, error)

AsExploreStandalone returns the union data inside the ExploreEntry as a ExploreStandalone

func (ExploreEntry) Discriminator

func (t ExploreEntry) Discriminator() (string, error)

func (*ExploreEntry) FromExploreGroup

func (t *ExploreEntry) FromExploreGroup(v ExploreGroup) error

FromExploreGroup overwrites any union data inside the ExploreEntry as the provided ExploreGroup

func (*ExploreEntry) FromExploreStandalone

func (t *ExploreEntry) FromExploreStandalone(v ExploreStandalone) error

FromExploreStandalone overwrites any union data inside the ExploreEntry as the provided ExploreStandalone

func (ExploreEntry) MarshalJSON

func (t ExploreEntry) MarshalJSON() ([]byte, error)

func (*ExploreEntry) MergeExploreGroup

func (t *ExploreEntry) MergeExploreGroup(v ExploreGroup) error

MergeExploreGroup performs a merge with any union data inside the ExploreEntry, using the provided ExploreGroup

func (*ExploreEntry) MergeExploreStandalone

func (t *ExploreEntry) MergeExploreStandalone(v ExploreStandalone) error

MergeExploreStandalone performs a merge with any union data inside the ExploreEntry, using the provided ExploreStandalone

func (*ExploreEntry) UnmarshalJSON

func (t *ExploreEntry) UnmarshalJSON(b []byte) error

func (ExploreEntry) ValueByDiscriminator

func (t ExploreEntry) ValueByDiscriminator() (interface{}, error)

type ExploreFacetValue

type ExploreFacetValue struct {
	Count int    `json:"count"`
	Label string `json:"label"`
	Value string `json:"value"`
}

ExploreFacetValue defines model for ExploreFacetValue.

type ExploreFacets

type ExploreFacets struct {
	Categories []ExploreFacetValue `json:"categories"`
	Platforms  []ExploreFacetValue `json:"platforms"`
}

ExploreFacets defines model for ExploreFacets.

type ExploreGroup

type ExploreGroup struct {
	Category  string `json:"category"`
	EventSlug string `json:"event_slug"`
	Image     string `json:"image"`

	// Markets Markets in the event cluster, ranked by volume with condition_id as the tie-breaker. The selected representative is retained within the 12-market cap.
	Markets     []ExploreMarket `json:"markets"`
	ParentTitle string          `json:"parent_title"`

	// Platform Provider platform. Always polymarket, or null when the row carries no stored value.
	Platform ExploreGroupPlatform `json:"platform"`

	// RepLargeTrades Canonical key since #16304; rep_whales is its deprecated spelling, emitted beside it with the same value.
	RepLargeTrades int              `json:"rep_large_trades"`
	RepVolume      float32          `json:"rep_volume"`
	RepWhales      int              `json:"rep_whales"`
	Type           ExploreGroupType `json:"type"`
}

ExploreGroup defines model for ExploreGroup.

type ExploreGroupPlatform added in v0.4.0

type ExploreGroupPlatform string

ExploreGroupPlatform Provider platform. Always polymarket, or null when the row carries no stored value.

const (
	ExploreGroupPlatformPolymarket ExploreGroupPlatform = "polymarket"
)

Defines values for ExploreGroupPlatform.

func (ExploreGroupPlatform) Valid added in v0.4.0

func (e ExploreGroupPlatform) Valid() bool

Valid indicates whether the value is a known member of the ExploreGroupPlatform enum.

type ExploreGroupType

type ExploreGroupType string

ExploreGroupType defines model for ExploreGroup.Type.

const (
	Group ExploreGroupType = "group"
)

Defines values for ExploreGroupType.

func (ExploreGroupType) Valid

func (e ExploreGroupType) Valid() bool

Valid indicates whether the value is a known member of the ExploreGroupType enum.

type ExploreMarket

type ExploreMarket struct {
	Category     string    `json:"category"`
	ChangePct24h float32   `json:"change_pct_24h"`
	ConditionId  string    `json:"condition_id"`
	CreatedAt    time.Time `json:"created_at"`

	// DiscoverScore Backend-owned deterministic market discovery score used by the hot sort.
	DiscoverScore float32   `json:"discover_score"`
	EndDate       time.Time `json:"end_date"`
	EventSlug     string    `json:"event_slug"`
	Freshness     *struct {
		EnrichmentStatus ExploreMarketFreshnessEnrichmentStatus `json:"enrichment_status"`
		PriceStatus      ExploreMarketFreshnessPriceStatus      `json:"price_status"`
	} `json:"freshness,omitempty"`
	Icon  string `json:"icon"`
	Id    string `json:"id"`
	Image string `json:"image"`

	// LargeTradeCount Canonical key since #16304 (Polymarket's noun is large trade); whale_trade_count is its deprecated spelling, emitted beside it with the same value.
	LargeTradeCount int `json:"large_trade_count"`

	// LargeTradeDistinctWallets Canonical key since #16304; whale_distinct_wallets is its deprecated spelling, emitted beside it with the same value.
	LargeTradeDistinctWallets int `json:"large_trade_distinct_wallets"`

	// LargeTradeLastAt Canonical key since #16304; whale_last_trade_at is its deprecated spelling, emitted beside it with the same value.
	LargeTradeLastAt time.Time `json:"large_trade_last_at"`

	// LargeTradeTotalUsd Canonical key since #16304; whale_total_usd is its deprecated spelling, emitted beside it with the same value.
	LargeTradeTotalUsd float32     `json:"large_trade_total_usd"`
	LastPrice          float32     `json:"last_price"`
	Liquidity          float32     `json:"liquidity"`
	NoChangePct24h     float32     `json:"no_change_pct_24h"`
	NoLastPrice        float32     `json:"no_last_price"`
	NoPricePoints      [][]float32 `json:"no_price_points"`
	OiChangePct        float32     `json:"oi_change_pct"`
	OpenInterest       float32     `json:"open_interest"`
	OutcomeNo          string      `json:"outcome_no"`

	// OutcomeNoLabel Display label for the NO/outcome_index=1 side, enriched from provider outcome metadata when available.
	OutcomeNoLabel string `json:"outcome_no_label"`

	// OutcomeNoProviderId Provider-owned NO/outcome_index=1 identifier when available for trade-ticket wiring.
	OutcomeNoProviderId int    `json:"outcome_no_provider_id"`
	OutcomeYes          string `json:"outcome_yes"`

	// OutcomeYesLabel Display label for the YES/outcome_index=0 side, enriched from provider outcome metadata when available.
	OutcomeYesLabel string `json:"outcome_yes_label"`

	// OutcomeYesProviderId Provider-owned YES/outcome_index=0 identifier when available for trade-ticket wiring.
	OutcomeYesProviderId int `json:"outcome_yes_provider_id"`

	// Platform Provider platform. Always polymarket, or null when the row carries no stored value.
	Platform        ExploreMarketPlatform `json:"platform"`
	PricePoints     [][]float32           `json:"price_points"`
	ScoreComponents *struct {
		// LargeTradeSignal Canonical key since #16304; whale_signal is its deprecated spelling, emitted beside it with the same value.
		LargeTradeSignal    float32 `json:"large_trade_signal"`
		LiquiditySignal     float32 `json:"liquidity_signal"`
		MissingPricePenalty float32 `json:"missing_price_penalty"`
		PriceMoveSignal     float32 `json:"price_move_signal"`
		RecencySignal       float32 `json:"recency_signal"`

		// SharpMoneySignal Canonical key since #16308; smart_money_signal is its deprecated spelling, emitted beside it with the same value.
		SharpMoneySignal float32 `json:"sharp_money_signal"`

		// SmartMoneySignal Deprecated spelling of sharp_money_signal; emitted beside it with the same value and never removed.
		// Deprecated: this property has been marked as deprecated upstream, but no `x-deprecated-reason` was set
		SmartMoneySignal float32 `json:"smart_money_signal"`
		VolumeSignal     float32 `json:"volume_signal"`
		WhaleSignal      float32 `json:"whale_signal"`
	} `json:"score_components,omitempty"`

	// Slug Provider-native market slug.
	Slug       string `json:"slug"`
	SmartCount int    `json:"smart_count"`

	// SmartLabel The outcome graded money leans toward RELATIVE TO THE PRICE: named only when the graded money's share of a side diverges from that side's price-implied share by at least 10 points, with at least $500 on the leaning side and outside the crowded-side guard. Null when the money sits with the price (no lean), when there is no graded money, or when the price is unavailable. The same rule as the market page.
	SmartLabel string  `json:"smart_label"`
	SmartScore float32 `json:"smart_score"`

	// Status closed once Polymarket has closed trading or the market has resolved; active otherwise. The same rule labels a market on markets/search, markets/explore and market/{condition_id}/snapshot.
	Status ExploreMarketStatus `json:"status"`

	// Title Non-empty market title.
	Title string `json:"title"`

	// TokenIdNo The Polymarket CLOB token id (ERC1155 asset id, decimal string) for the NO outcome; null when unavailable (e.g. unsynced markets).
	TokenIdNo string `json:"token_id_no"`

	// TokenIdYes The Polymarket CLOB token id (ERC1155 asset id, decimal string) for the YES outcome; null when unavailable (e.g. unsynced markets).
	TokenIdYes string `json:"token_id_yes"`

	// UrlSlug First-party market page slug used for internal links.
	UrlSlug              string    `json:"url_slug"`
	Volume               float32   `json:"volume"`
	WhaleDistinctWallets int       `json:"whale_distinct_wallets"`
	WhaleLastTradeAt     time.Time `json:"whale_last_trade_at"`
	WhaleTotalUsd        float32   `json:"whale_total_usd"`
	WhaleTradeCount      int       `json:"whale_trade_count"`
}

ExploreMarket defines model for ExploreMarket.

type ExploreMarketFreshnessEnrichmentStatus

type ExploreMarketFreshnessEnrichmentStatus string

ExploreMarketFreshnessEnrichmentStatus defines model for ExploreMarket.Freshness.EnrichmentStatus.

const (
	ExploreMarketFreshnessEnrichmentStatusAvailable   ExploreMarketFreshnessEnrichmentStatus = "available"
	ExploreMarketFreshnessEnrichmentStatusUnavailable ExploreMarketFreshnessEnrichmentStatus = "unavailable"
)

Defines values for ExploreMarketFreshnessEnrichmentStatus.

func (ExploreMarketFreshnessEnrichmentStatus) Valid

Valid indicates whether the value is a known member of the ExploreMarketFreshnessEnrichmentStatus enum.

type ExploreMarketFreshnessPriceStatus

type ExploreMarketFreshnessPriceStatus string

ExploreMarketFreshnessPriceStatus defines model for ExploreMarket.Freshness.PriceStatus.

const (
	ExploreMarketFreshnessPriceStatusAvailable   ExploreMarketFreshnessPriceStatus = "available"
	ExploreMarketFreshnessPriceStatusUnavailable ExploreMarketFreshnessPriceStatus = "unavailable"
)

Defines values for ExploreMarketFreshnessPriceStatus.

func (ExploreMarketFreshnessPriceStatus) Valid

Valid indicates whether the value is a known member of the ExploreMarketFreshnessPriceStatus enum.

type ExploreMarketPlatform added in v0.4.0

type ExploreMarketPlatform string

ExploreMarketPlatform Provider platform. Always polymarket, or null when the row carries no stored value.

const (
	ExploreMarketPlatformPolymarket ExploreMarketPlatform = "polymarket"
)

Defines values for ExploreMarketPlatform.

func (ExploreMarketPlatform) Valid added in v0.4.0

func (e ExploreMarketPlatform) Valid() bool

Valid indicates whether the value is a known member of the ExploreMarketPlatform enum.

type ExploreMarketStatus

type ExploreMarketStatus string

ExploreMarketStatus closed once Polymarket has closed trading or the market has resolved; active otherwise. The same rule labels a market on markets/search, markets/explore and market/{condition_id}/snapshot.

const (
	ExploreMarketStatusActive ExploreMarketStatus = "active"
	ExploreMarketStatusClosed ExploreMarketStatus = "closed"
)

Defines values for ExploreMarketStatus.

func (ExploreMarketStatus) Valid

func (e ExploreMarketStatus) Valid() bool

Valid indicates whether the value is a known member of the ExploreMarketStatus enum.

type ExploreMarkets200JSONResponseBodyObject

type ExploreMarkets200JSONResponseBodyObject string

ExploreMarkets200JSONResponseBodyObject defines parameters for ExploreMarkets.

const (
	ExploreMarkets200JSONResponseBodyObjectList ExploreMarkets200JSONResponseBodyObject = "list"
)

Defines values for ExploreMarkets200JSONResponseBodyObject.

func (ExploreMarkets200JSONResponseBodyObject) Valid

Valid indicates whether the value is a known member of the ExploreMarkets200JSONResponseBodyObject enum.

type ExploreMarketsParams

type ExploreMarketsParams struct {
	// Category Filter by market category (case-insensitive). A canonical bucket name (e.g. Basketball) matches every provider member that folds into it (NBA, WNBA, NCAAB); a raw provider value also resolves to its bucket. Facet values are returned as the canonical bucket.
	Category *string `form:"category,omitempty" json:"category,omitempty"`

	// Status Filter by market status. A market is closed once Polymarket has closed trading or it has resolved, and active otherwise; all returns both.
	Status *ExploreMarketsParamsStatus `form:"status,omitempty" json:"status,omitempty"`

	// Platform Filter by source platform. Explore is Polymarket-only; polymarket is the only supported value and the parameter is accepted for backward-compatibility but does not change the result set.
	Platform *ExploreMarketsParamsPlatform `form:"platform,omitempty" json:"platform,omitempty"`

	// Sort Sort order for the discovery feed. `large_trades` ranks by large-trade activity; `whales` is its deprecated spelling and selects the same order.
	Sort *ExploreMarketsParamsSort `form:"sort,omitempty" json:"sort,omitempty"`

	// Cursor Opaque pagination cursor from the previous response.
	Cursor *string `form:"cursor,omitempty" json:"cursor,omitempty"`

	// Limit Page size. Out-of-range values are clamped to 1..48.
	Limit *int `form:"limit,omitempty" json:"limit,omitempty"`

	// Q Keyword search against market titles. At most 64 characters before whitespace trimming.
	Q *string `form:"q,omitempty" json:"q,omitempty"`

	// XQueryValidation Opt into strict query-name validation. The default is compatible: unknown names are ignored and reported in X-Query-Ignored. With strict, an unknown name returns 400 bad_request with error.reason unknown_query_parameter before the handler runs, including when its percent escape is incomplete.
	XQueryValidation *ExploreMarketsParamsXQueryValidation `json:"X-Query-Validation,omitempty"`

	// IfNoneMatch Conditional GET validator from a previous ETag. Matching values return 304 Not Modified with an empty body.
	IfNoneMatch *string `json:"If-None-Match,omitempty"`
}

ExploreMarketsParams defines parameters for ExploreMarkets.

type ExploreMarketsParamsPlatform

type ExploreMarketsParamsPlatform string

ExploreMarketsParamsPlatform defines parameters for ExploreMarkets.

const (
	ExploreMarketsParamsPlatformPolymarket ExploreMarketsParamsPlatform = "polymarket"
)

Defines values for ExploreMarketsParamsPlatform.

func (ExploreMarketsParamsPlatform) Valid

Valid indicates whether the value is a known member of the ExploreMarketsParamsPlatform enum.

type ExploreMarketsParamsSort

type ExploreMarketsParamsSort string

ExploreMarketsParamsSort defines parameters for ExploreMarkets.

const (
	ExploreMarketsParamsSortExpiring    ExploreMarketsParamsSort = "expiring"
	ExploreMarketsParamsSortHot         ExploreMarketsParamsSort = "hot"
	ExploreMarketsParamsSortLargeTrades ExploreMarketsParamsSort = "large_trades"
	ExploreMarketsParamsSortNewest      ExploreMarketsParamsSort = "newest"
	ExploreMarketsParamsSortTrending    ExploreMarketsParamsSort = "trending"
	ExploreMarketsParamsSortVolume      ExploreMarketsParamsSort = "volume"
	ExploreMarketsParamsSortWhales      ExploreMarketsParamsSort = "whales"
)

Defines values for ExploreMarketsParamsSort.

func (ExploreMarketsParamsSort) Valid

func (e ExploreMarketsParamsSort) Valid() bool

Valid indicates whether the value is a known member of the ExploreMarketsParamsSort enum.

type ExploreMarketsParamsStatus

type ExploreMarketsParamsStatus string

ExploreMarketsParamsStatus defines parameters for ExploreMarkets.

const (
	ExploreMarketsParamsStatusActive ExploreMarketsParamsStatus = "active"
	ExploreMarketsParamsStatusAll    ExploreMarketsParamsStatus = "all"
	ExploreMarketsParamsStatusClosed ExploreMarketsParamsStatus = "closed"
)

Defines values for ExploreMarketsParamsStatus.

func (ExploreMarketsParamsStatus) Valid

func (e ExploreMarketsParamsStatus) Valid() bool

Valid indicates whether the value is a known member of the ExploreMarketsParamsStatus enum.

type ExploreMarketsParamsXQueryValidation added in v0.3.0

type ExploreMarketsParamsXQueryValidation string

ExploreMarketsParamsXQueryValidation defines parameters for ExploreMarkets.

const (
	ExploreMarketsParamsXQueryValidationStrict ExploreMarketsParamsXQueryValidation = "strict"
)

Defines values for ExploreMarketsParamsXQueryValidation.

func (ExploreMarketsParamsXQueryValidation) Valid added in v0.3.0

Valid indicates whether the value is a known member of the ExploreMarketsParamsXQueryValidation enum.

type ExploreMarketsResponse

type ExploreMarketsResponse struct {
	Body         []byte
	HTTPResponse *http.Response
	// JSON200 the response for an HTTP 200 `application/json` response
	JSON200 *struct {
		// ComputedAt When this response body was computed. Present whenever the body came from, or was just written to, the 60s explore cache. Pair it with fresh_for_seconds to derive how much longer the body may be reused: fresh_for_seconds - age(computed_at). Excluded from the ETag validator, so a body recomputed with identical data keeps its validator.
		ComputedAt *time.Time     `json:"computed_at,omitempty"`
		Data       []ExploreEntry `json:"data"`
		Facets     ExploreFacets  `json:"facets"`

		// FreshForSeconds How long the body computed at computed_at is good for, in seconds. Deliberately not pre-subtracted: a cached body cannot carry a number that changes while it sits in the cache. Excluded from the ETag validator.
		FreshForSeconds *int                                    `json:"fresh_for_seconds,omitempty"`
		HasMore         bool                                    `json:"has_more"`
		Meta            ResponseMeta                            `json:"meta"`
		NextCursor      *string                                 `json:"next_cursor,omitempty"`
		Object          ExploreMarkets200JSONResponseBodyObject `json:"object"`

		// Total Total matching visible entries after grouping. Present on the first page and omitted on cursor pages.
		Total *int `json:"total,omitempty"`
	}
	// JSON400 the response for an HTTP 400 `application/json` response
	JSON400 *ApiError
	// JSON401 the response for an HTTP 401 `application/json` response
	JSON401 *ApiError
	// JSON402 the response for an HTTP 402 `application/json` response
	JSON402 *ApiError
	// JSON403 the response for an HTTP 403 `application/json` response
	JSON403 *ApiError
	// JSON408 the response for an HTTP 408 `application/json` response
	JSON408 *ApiError
	// JSON423 the response for an HTTP 423 `application/json` response
	JSON423 *ApiError
	// JSON429 the response for an HTTP 429 `application/json` response
	JSON429 *ApiError
	// JSON500 the response for an HTTP 500 `application/json` response
	JSON500 *ApiError
	// JSON503 the response for an HTTP 503 `application/json` response
	JSON503 *ApiError
	// Headers200 the parsed response headers for an HTTP 200 response
	Headers200 *ExploreMarketsResponse200Headers
	// Headers304 the parsed response headers for an HTTP 304 response
	Headers304 *ExploreMarketsResponse304Headers
	// Headers429 the parsed response headers for an HTTP 429 response
	Headers429 *ExploreMarketsResponse429Headers
	// Headers503 the parsed response headers for an HTTP 503 response
	Headers503 *ExploreMarketsResponse503Headers
}

func ParseExploreMarketsResponse

func ParseExploreMarketsResponse(rsp *http.Response) (*ExploreMarketsResponse, error)

ParseExploreMarketsResponse parses an HTTP response from a ExploreMarketsWithResponse call

func (ExploreMarketsResponse) ContentType

func (r ExploreMarketsResponse) ContentType() string

ContentType is a convenience method to retrieve the Content-Type value from the HTTP response headers

func (ExploreMarketsResponse) GetBody

func (r ExploreMarketsResponse) GetBody() []byte

GetBody returns the raw response body bytes

func (ExploreMarketsResponse) GetJSON200

func (r ExploreMarketsResponse) GetJSON200() *struct {
	// ComputedAt When this response body was computed. Present whenever the body came from, or was just written to, the 60s explore cache. Pair it with fresh_for_seconds to derive how much longer the body may be reused: fresh_for_seconds - age(computed_at). Excluded from the ETag validator, so a body recomputed with identical data keeps its validator.
	ComputedAt *time.Time     `json:"computed_at,omitempty"`
	Data       []ExploreEntry `json:"data"`
	Facets     ExploreFacets  `json:"facets"`

	// FreshForSeconds How long the body computed at computed_at is good for, in seconds. Deliberately not pre-subtracted: a cached body cannot carry a number that changes while it sits in the cache. Excluded from the ETag validator.
	FreshForSeconds *int                                    `json:"fresh_for_seconds,omitempty"`
	HasMore         bool                                    `json:"has_more"`
	Meta            ResponseMeta                            `json:"meta"`
	NextCursor      *string                                 `json:"next_cursor,omitempty"`
	Object          ExploreMarkets200JSONResponseBodyObject `json:"object"`

	// Total Total matching visible entries after grouping. Present on the first page and omitted on cursor pages.
	Total *int `json:"total,omitempty"`
}

GetJSON200 returns the response for an HTTP 200 `application/json` response

func (ExploreMarketsResponse) GetJSON400

func (r ExploreMarketsResponse) GetJSON400() *ApiError

GetJSON400 returns the response for an HTTP 400 `application/json` response

func (ExploreMarketsResponse) GetJSON401

func (r ExploreMarketsResponse) GetJSON401() *ApiError

GetJSON401 returns the response for an HTTP 401 `application/json` response

func (ExploreMarketsResponse) GetJSON402

func (r ExploreMarketsResponse) GetJSON402() *ApiError

GetJSON402 returns the response for an HTTP 402 `application/json` response

func (ExploreMarketsResponse) GetJSON403

func (r ExploreMarketsResponse) GetJSON403() *ApiError

GetJSON403 returns the response for an HTTP 403 `application/json` response

func (ExploreMarketsResponse) GetJSON408 added in v0.2.0

func (r ExploreMarketsResponse) GetJSON408() *ApiError

GetJSON408 returns the response for an HTTP 408 `application/json` response

func (ExploreMarketsResponse) GetJSON423

func (r ExploreMarketsResponse) GetJSON423() *ApiError

GetJSON423 returns the response for an HTTP 423 `application/json` response

func (ExploreMarketsResponse) GetJSON429

func (r ExploreMarketsResponse) GetJSON429() *ApiError

GetJSON429 returns the response for an HTTP 429 `application/json` response

func (ExploreMarketsResponse) GetJSON500 added in v0.4.0

func (r ExploreMarketsResponse) GetJSON500() *ApiError

GetJSON500 returns the response for an HTTP 500 `application/json` response

func (ExploreMarketsResponse) GetJSON503

func (r ExploreMarketsResponse) GetJSON503() *ApiError

GetJSON503 returns the response for an HTTP 503 `application/json` response

func (ExploreMarketsResponse) Status

func (r ExploreMarketsResponse) Status() string

Status returns HTTPResponse.Status

func (ExploreMarketsResponse) StatusCode

func (r ExploreMarketsResponse) StatusCode() int

StatusCode returns HTTPResponse.StatusCode

type ExploreMarketsResponse200Headers

type ExploreMarketsResponse200Headers struct {
	ETag                *string
	RateLimitLimit      *int
	RateLimitRemaining  *int
	RateLimitReset      *int
	ServerTiming        *string
	XEffectiveQuery     *string
	XQueryIgnored       *string
	XRateLimitLimit     *int
	XRateLimitRemaining *int
	XRateLimitReset     *int
	XRequestId          *string
	XUsageAccounting    *string
}

ExploreMarketsResponse200Headers the declared response headers of an HTTP 200 response for ExploreMarkets

type ExploreMarketsResponse304Headers

type ExploreMarketsResponse304Headers struct {
	ETag                *string
	RateLimitLimit      *int
	RateLimitRemaining  *int
	RateLimitReset      *int
	ServerTiming        *string
	XEffectiveQuery     *string
	XQueryIgnored       *string
	XRateLimitLimit     *int
	XRateLimitRemaining *int
	XRateLimitReset     *int
	XRequestId          *string
	XUsageAccounting    *string
}

ExploreMarketsResponse304Headers the declared response headers of an HTTP 304 response for ExploreMarkets

type ExploreMarketsResponse429Headers

type ExploreMarketsResponse429Headers struct {
	RateLimitLimit      *int
	RateLimitRemaining  *int
	RateLimitReset      *int
	RetryAfter          *int
	XRateLimitLimit     *int
	XRateLimitRemaining *int
	XRateLimitReset     *int
	XRequestId          *string
}

ExploreMarketsResponse429Headers the declared response headers of an HTTP 429 response for ExploreMarkets

type ExploreMarketsResponse503Headers

type ExploreMarketsResponse503Headers struct {
	RetryAfter *int
	XRequestId *string
}

ExploreMarketsResponse503Headers the declared response headers of an HTTP 503 response for ExploreMarkets

type ExploreStandalone

type ExploreStandalone struct {
	Market ExploreMarket         `json:"market"`
	Type   ExploreStandaloneType `json:"type"`
}

ExploreStandalone defines model for ExploreStandalone.

type ExploreStandaloneType

type ExploreStandaloneType string

ExploreStandaloneType defines model for ExploreStandalone.Type.

const (
	Standalone ExploreStandaloneType = "standalone"
)

Defines values for ExploreStandaloneType.

func (ExploreStandaloneType) Valid

func (e ExploreStandaloneType) Valid() bool

Valid indicates whether the value is a known member of the ExploreStandaloneType enum.

type ExportCompleteness

type ExportCompleteness struct {
	Reason       string                   `json:"reason"`
	Status       ExportCompletenessStatus `json:"status"`
	SyncCoverage float32                  `json:"sync_coverage"`
}

ExportCompleteness defines model for ExportCompleteness.

type ExportCompletenessStatus

type ExportCompletenessStatus string

ExportCompletenessStatus defines model for ExportCompleteness.Status.

const (
	ExportCompletenessStatusComplete ExportCompletenessStatus = "complete"
	ExportCompletenessStatusEmpty    ExportCompletenessStatus = "empty"
	ExportCompletenessStatusPartial  ExportCompletenessStatus = "partial"
)

Defines values for ExportCompletenessStatus.

func (ExportCompletenessStatus) Valid

func (e ExportCompletenessStatus) Valid() bool

Valid indicates whether the value is a known member of the ExportCompletenessStatus enum.

type ExportCounts

type ExportCounts struct {
	EstimatedSizeMb    float32 `json:"estimated_size_mb"`
	EstimatedTradeRows int     `json:"estimated_trade_rows"`
	ExportedMarkets    int     `json:"exported_markets"`
	PnlDays            int     `json:"pnl_days"`
}

ExportCounts defines model for ExportCounts.

type ExportSourceRange

type ExportSourceRange struct {
	FirstPnlDate           openapi_types.Date `json:"first_pnl_date"`
	LastPnlDate            openapi_types.Date `json:"last_pnl_date"`
	LatestMarketActivityAt time.Time          `json:"latest_market_activity_at"`
	LatestTradeAt          time.Time          `json:"latest_trade_at"`
}

ExportSourceRange defines model for ExportSourceRange.

type ExportVolumeReconciliation

type ExportVolumeReconciliation struct {
	ActivityVolumeCoverage    float32 `json:"activity_volume_coverage"`
	ExportedActivityVolume    float32 `json:"exported_activity_volume"`
	ExportedMarketCostBasis   float32 `json:"exported_market_cost_basis"`
	ProviderActivityVolumeGap float32 `json:"provider_activity_volume_gap"`

	// ProviderLifetimeVolume Verified full-history both-sides USD cash volume. Null without coverage; the local activity numerator may cover only a subset of history.
	ProviderLifetimeVolume float32 `json:"provider_lifetime_volume"`
}

ExportVolumeReconciliation defines model for ExportVolumeReconciliation.

type FreshnessFailure added in v0.4.0

type FreshnessFailure struct {
	// ActualAgeS Age in seconds of the oldest stored data_quality.as_of clock, when one is available.
	ActualAgeS *int64 `json:"actual_age_s,omitempty"`

	// AsOf The oldest stored data-quality clock used to calculate actual_age_s, when one is available.
	AsOf *time.Time `json:"as_of,omitempty"`

	// DataQualityStatus The trader body's whole-response data-quality status. Only fresh can satisfy max_age_s.
	DataQualityStatus FreshnessFailureDataQualityStatus `json:"data_quality_status"`

	// MaxAgeS The caller's requested whole-response freshness ceiling in seconds.
	MaxAgeS int64 `json:"max_age_s"`
}

FreshnessFailure defines model for FreshnessFailure.

type FreshnessFailureDataQualityStatus added in v0.4.0

type FreshnessFailureDataQualityStatus string

FreshnessFailureDataQualityStatus The trader body's whole-response data-quality status. Only fresh can satisfy max_age_s.

const (
	FreshnessFailureDataQualityStatusFresh       FreshnessFailureDataQualityStatus = "fresh"
	FreshnessFailureDataQualityStatusPartial     FreshnessFailureDataQualityStatus = "partial"
	FreshnessFailureDataQualityStatusUnavailable FreshnessFailureDataQualityStatus = "unavailable"
	FreshnessFailureDataQualityStatusUnknown     FreshnessFailureDataQualityStatus = "unknown"
	FreshnessFailureDataQualityStatusUntracked   FreshnessFailureDataQualityStatus = "untracked"
)

Defines values for FreshnessFailureDataQualityStatus.

func (FreshnessFailureDataQualityStatus) Valid added in v0.4.0

Valid indicates whether the value is a known member of the FreshnessFailureDataQualityStatus enum.

type Game added in v0.4.0

type Game struct {
	// Competitors Both sides, in the provider's own order. For a team league the provider lists the home side first. Empty when the provider identified neither side.
	Competitors []GameCompetitor `json:"competitors"`

	// Coverage What this game's read actually supplied, so a client branches on coverage instead of on a missing key.
	Coverage GameCoverage `json:"coverage"`

	// DrawOffered Whether one of this game's markets pays on a draw. Read this instead of assuming a two-outcome moneyline.
	DrawOffered bool `json:"draw_offered"`

	// EventSlug The game's identity, for example mlb-mil-cin-2026-06-22. The same key the live_sports_updated webhook pulse carries and the same key /api/v1/games/{event_slug} takes.
	EventSlug string `json:"event_slug"`

	// Freshness 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.
	Freshness GameFreshness `json:"freshness"`

	// GameId The provider's Gamma gameId, as a string. Omitted when the canonical owner has no single value for this slug: the provider stamps one gameId across an event's derivative siblings, so an ambiguous read is reported as unknown rather than guessed.
	GameId *string `json:"game_id,omitempty"`

	// League The league tag, for example nfl or epl. Omitted for a sport served as one whole bucket with no league scope.
	League *string `json:"league,omitempty"`

	// Markets Every market this read linked to the game, ordered by condition_id.
	Markets []GameMarket `json:"markets"`
	Object  GameObject   `json:"object"`

	// ScheduledAt Kickoff in UTC, as the provider supplied it. Omitted when the provider published none; coverage.schedule then reads unavailable.
	ScheduledAt *time.Time `json:"scheduled_at,omitempty"`

	// SeriesFormat The esports series length, for example Bo3. Omitted for everything else.
	SeriesFormat *string `json:"series_format,omitempty"`

	// Sport The canonical sport bucket, for example Soccer or Table Tennis. Omitted when neither the board scope nor the provider category names one.
	Sport *string `json:"sport,omitempty"`

	// Status 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.
	Status GameStatus `json:"status"`

	// Title The provider's event title. Omitted when the provider sent none.
	Title *string `json:"title,omitempty"`

	// Url The game's page on 0xinsider.
	Url string `json:"url"`
}

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.

type GameCompetitor added in v0.4.0

type GameCompetitor struct {
	Logo *string `json:"logo,omitempty"`

	// Name The competitor's name as the provider gives it.
	Name string `json:"name"`

	// ProviderId The provider's league-scoped competitor id, as a string. Omitted when the provider has not identified this side; coverage.competitors then reads labels.
	ProviderId *string `json:"provider_id,omitempty"`

	// Record The provider's season record for this side, for example 12-4. Omitted when the provider sent none.
	Record *string `json:"record,omitempty"`

	// Score The provider's score for this side, verbatim. A string because the provider sends one: a set score, a map score and a run total are not all integers. Omitted when no live-score frame carries a score.
	Score *string `json:"score,omitempty"`
}

GameCompetitor One side of the game.

type GameCoverage added in v0.4.0

type GameCoverage struct {
	// Competitors provider_ids when every side carries a provider id, labels when only the provider's names identify them, unavailable when neither exists. Do not join on names when this reads labels.
	Competitors GameCoverageCompetitors `json:"competitors"`

	// Schedule available when the provider supplied a kickoff.
	Schedule GameCoverageSchedule `json:"schedule"`

	// Scores available when a live-score frame supplied this game's scores.
	Scores GameCoverageScores `json:"scores"`
}

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

type GameCoverageCompetitors added in v0.4.0

type GameCoverageCompetitors string

GameCoverageCompetitors provider_ids when every side carries a provider id, labels when only the provider's names identify them, unavailable when neither exists. Do not join on names when this reads labels.

const (
	GameCoverageCompetitorsLabels      GameCoverageCompetitors = "labels"
	GameCoverageCompetitorsProviderIds GameCoverageCompetitors = "provider_ids"
	GameCoverageCompetitorsUnavailable GameCoverageCompetitors = "unavailable"
)

Defines values for GameCoverageCompetitors.

func (GameCoverageCompetitors) Valid added in v0.4.0

func (e GameCoverageCompetitors) Valid() bool

Valid indicates whether the value is a known member of the GameCoverageCompetitors enum.

type GameCoverageSchedule added in v0.4.0

type GameCoverageSchedule string

GameCoverageSchedule available when the provider supplied a kickoff.

const (
	GameCoverageScheduleAvailable   GameCoverageSchedule = "available"
	GameCoverageScheduleUnavailable GameCoverageSchedule = "unavailable"
)

Defines values for GameCoverageSchedule.

func (GameCoverageSchedule) Valid added in v0.4.0

func (e GameCoverageSchedule) Valid() bool

Valid indicates whether the value is a known member of the GameCoverageSchedule enum.

type GameCoverageScores added in v0.4.0

type GameCoverageScores string

GameCoverageScores available when a live-score frame supplied this game's scores.

const (
	GameCoverageScoresAvailable   GameCoverageScores = "available"
	GameCoverageScoresUnavailable GameCoverageScores = "unavailable"
)

Defines values for GameCoverageScores.

func (GameCoverageScores) Valid added in v0.4.0

func (e GameCoverageScores) Valid() bool

Valid indicates whether the value is a known member of the GameCoverageScores enum.

type GameFreshness added in v0.4.0

type GameFreshness struct {
	// Delayed Whether a reader should be told these rows are behind. This applies the half's own servable-age bar (15 s live, 120 s upcoming), which is not the same as source_freshness: a live board whose scores are seconds old reads stale for about half of every publish cycle and is not delayed.
	Delayed bool `json:"delayed"`

	// ScoresObservedAt When this game's live-score frame was observed. Omitted when there is no frame.
	ScoresObservedAt *time.Time `json:"scores_observed_at,omitempty"`

	// ScoresSourceAt The provider's own frame clock. Omitted when the frame carries none.
	ScoresSourceAt *time.Time `json:"scores_source_at,omitempty"`

	// Source Which board half produced this game.
	Source GameFreshnessSource `json:"source"`

	// SourceAgeSeconds Age of source_observed_at in seconds, capped at 600. Omitted past the cap or with no anchor.
	SourceAgeSeconds *int `json:"source_age_seconds,omitempty"`

	// SourceAvailability Whether that half had a source body at all. not_applicable means the sport has no configured source for that half.
	SourceAvailability GameFreshnessSourceAvailability `json:"source_availability"`

	// SourceFreshness Freshness of the cached source body, never inferred from the response clock or the row count.
	SourceFreshness GameFreshnessSourceFreshness `json:"source_freshness"`

	// SourceObservedAt The source body's data vintage. Omitted when the read has no vintage anchor, which is not age zero.
	SourceObservedAt *time.Time `json:"source_observed_at,omitempty"`

	// SourceStatus Whether that half returned a truthful source body for this read.
	SourceStatus GameFreshnessSourceStatus `json:"source_status"`
}

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.

type GameFreshnessSource added in v0.4.0

type GameFreshnessSource string

GameFreshnessSource Which board half produced this game.

const (
	GameFreshnessSourceLive     GameFreshnessSource = "live"
	GameFreshnessSourceUpcoming GameFreshnessSource = "upcoming"
)

Defines values for GameFreshnessSource.

func (GameFreshnessSource) Valid added in v0.4.0

func (e GameFreshnessSource) Valid() bool

Valid indicates whether the value is a known member of the GameFreshnessSource enum.

type GameFreshnessSourceAvailability added in v0.4.0

type GameFreshnessSourceAvailability string

GameFreshnessSourceAvailability Whether that half had a source body at all. not_applicable means the sport has no configured source for that half.

const (
	GameFreshnessSourceAvailabilityAvailable     GameFreshnessSourceAvailability = "available"
	GameFreshnessSourceAvailabilityNotApplicable GameFreshnessSourceAvailability = "not_applicable"
	GameFreshnessSourceAvailabilityUnavailable   GameFreshnessSourceAvailability = "unavailable"
)

Defines values for GameFreshnessSourceAvailability.

func (GameFreshnessSourceAvailability) Valid added in v0.4.0

Valid indicates whether the value is a known member of the GameFreshnessSourceAvailability enum.

type GameFreshnessSourceFreshness added in v0.4.0

type GameFreshnessSourceFreshness string

GameFreshnessSourceFreshness Freshness of the cached source body, never inferred from the response clock or the row count.

const (
	GameFreshnessSourceFreshnessFresh         GameFreshnessSourceFreshness = "fresh"
	GameFreshnessSourceFreshnessNotApplicable GameFreshnessSourceFreshness = "not_applicable"
	GameFreshnessSourceFreshnessStale         GameFreshnessSourceFreshness = "stale"
	GameFreshnessSourceFreshnessUnknown       GameFreshnessSourceFreshness = "unknown"
)

Defines values for GameFreshnessSourceFreshness.

func (GameFreshnessSourceFreshness) Valid added in v0.4.0

Valid indicates whether the value is a known member of the GameFreshnessSourceFreshness enum.

type GameFreshnessSourceStatus added in v0.4.0

type GameFreshnessSourceStatus string

GameFreshnessSourceStatus Whether that half returned a truthful source body for this read.

const (
	GameFreshnessSourceStatusOk          GameFreshnessSourceStatus = "ok"
	GameFreshnessSourceStatusUnavailable GameFreshnessSourceStatus = "unavailable"
)

Defines values for GameFreshnessSourceStatus.

func (GameFreshnessSourceStatus) Valid added in v0.4.0

func (e GameFreshnessSourceStatus) Valid() bool

Valid indicates whether the value is a known member of the GameFreshnessSourceStatus enum.

type GameMarket added in v0.4.0

type GameMarket struct {
	// ConditionId The raw provider condition id.
	ConditionId string `json:"condition_id"`

	// Id The mkt_-prefixed market id every other V1 response uses.
	Id string `json:"id"`

	// OutcomeNo The provider's label for the NO outcome. Omitted when the provider sent none.
	OutcomeNo *string `json:"outcome_no,omitempty"`

	// OutcomeTokenIds Polymarket CLOB token ids in the provider's own outcome-index order. Omitted when the provider has published none for this market.
	OutcomeTokenIds *[]string `json:"outcome_token_ids,omitempty"`

	// OutcomeYes The provider's label for the YES outcome. Omitted when the provider sent none.
	OutcomeYes *string `json:"outcome_yes,omitempty"`

	// Platform Always polymarket.
	Platform GameMarketPlatform `json:"platform"`

	// Prices Default provider moneyline state. Omitted when this market has no classified moneyline projection; incomplete and invalid projections remain explicit.
	Prices *GameMarketPrices `json:"prices,omitempty"`

	// Side Which side of the game this market's YES leg pays. draw is a real value: a 1X2 market's third leg is not a competitor. Omitted when the provider ids do not classify the leg, which is not the same as other.
	Side *GameMarketSide `json:"side,omitempty"`

	// Slug The provider's market slug. Omitted when the provider sent none.
	Slug *string `json:"slug,omitempty"`

	// SportsMarketType The provider's own market type, for example moneyline or spread. Omitted when the provider sent none. Not an enum: the provider owns this vocabulary and adds to it.
	SportsMarketType *string `json:"sports_market_type,omitempty"`
}

GameMarket One Polymarket market linked to this game.

type GameMarketPlatform added in v0.4.0

type GameMarketPlatform string

GameMarketPlatform Always polymarket.

const (
	GameMarketPlatformPolymarket GameMarketPlatform = "polymarket"
)

Defines values for GameMarketPlatform.

func (GameMarketPlatform) Valid added in v0.4.0

func (e GameMarketPlatform) Valid() bool

Valid indicates whether the value is a known member of the GameMarketPlatform enum.

type GameMarketPriceBindingProvenance added in v0.4.0

type GameMarketPriceBindingProvenance string

GameMarketPriceBindingProvenance How the existing sports-board writer bound prices to competitors.

const (
	GameMarketPriceBindingProvenanceContainmentLabels GameMarketPriceBindingProvenance = "containment_labels"
	GameMarketPriceBindingProvenanceElimination       GameMarketPriceBindingProvenance = "elimination"
	GameMarketPriceBindingProvenanceExactLabels       GameMarketPriceBindingProvenance = "exact_labels"
	GameMarketPriceBindingProvenanceProviderIds       GameMarketPriceBindingProvenance = "provider_ids"
)

Defines values for GameMarketPriceBindingProvenance.

func (GameMarketPriceBindingProvenance) Valid added in v0.4.0

Valid indicates whether the value is a known member of the GameMarketPriceBindingProvenance enum.

type GameMarketPriceCompetitor added in v0.4.0

type GameMarketPriceCompetitor struct {
	// Label The provider competitor label.
	Label string `json:"label"`

	// Price Unrounded provider price in [0, 1].
	Price float32 `json:"price"`

	// PriceProvenance Which provider price observation supplies this leg.
	PriceProvenance GameMarketPriceCompetitorPriceProvenance `json:"price_provenance"`

	// ProviderId The provider competitor id when identity is available.
	ProviderId *int64 `json:"provider_id,omitempty"`
}

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

type GameMarketPriceCompetitorPriceProvenance added in v0.4.0

type GameMarketPriceCompetitorPriceProvenance string

GameMarketPriceCompetitorPriceProvenance Which provider price observation supplies this leg.

const (
	GameMarketPriceCompetitorPriceProvenanceClobDisplay        GameMarketPriceCompetitorPriceProvenance = "clob_display"
	GameMarketPriceCompetitorPriceProvenanceGammaOutcomePrices GameMarketPriceCompetitorPriceProvenance = "gamma_outcome_prices"
)

Defines values for GameMarketPriceCompetitorPriceProvenance.

func (GameMarketPriceCompetitorPriceProvenance) Valid added in v0.4.0

Valid indicates whether the value is a known member of the GameMarketPriceCompetitorPriceProvenance enum.

type GameMarketPriceIncomplete added in v0.4.0

type GameMarketPriceIncomplete struct {
	// BindingProvenance How the existing sports-board writer bound prices to competitors.
	BindingProvenance *GameMarketPriceBindingProvenance `json:"binding_provenance,omitempty"`

	// CompetitorAIsYes Whether competitor A is the provider YES leg.
	CompetitorAIsYes *bool `json:"competitor_a_is_yes,omitempty"`

	// CompetitorAProviderId The provider competitor id when identity is available.
	CompetitorAProviderId *int64 `json:"competitor_a_provider_id,omitempty"`

	// CompetitorBProviderId The provider competitor id when identity is available.
	CompetitorBProviderId *int64                          `json:"competitor_b_provider_id,omitempty"`
	Reason                GameMarketPriceIncompleteReason `json:"reason"`
	State                 GameMarketPriceIncompleteState  `json:"state"`
}

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

type GameMarketPriceIncompleteReason added in v0.4.0

type GameMarketPriceIncompleteReason string

GameMarketPriceIncompleteReason defines model for GameMarketPriceIncomplete.Reason.

const (
	DisplayPricePairUnavailable GameMarketPriceIncompleteReason = "display_price_pair_unavailable"
	FinalScoreUnavailable       GameMarketPriceIncompleteReason = "final_score_unavailable"
	OutcomeIdentityUnavailable  GameMarketPriceIncompleteReason = "outcome_identity_unavailable"
	OutcomePriceLegMissing      GameMarketPriceIncompleteReason = "outcome_price_leg_missing"
	OutcomePricesMissing        GameMarketPriceIncompleteReason = "outcome_prices_missing"
	ZeroPriceSentinel           GameMarketPriceIncompleteReason = "zero_price_sentinel"
)

Defines values for GameMarketPriceIncompleteReason.

func (GameMarketPriceIncompleteReason) Valid added in v0.4.0

Valid indicates whether the value is a known member of the GameMarketPriceIncompleteReason enum.

type GameMarketPriceIncompleteState added in v0.4.0

type GameMarketPriceIncompleteState string

GameMarketPriceIncompleteState defines model for GameMarketPriceIncomplete.State.

const (
	Incomplete GameMarketPriceIncompleteState = "incomplete"
)

Defines values for GameMarketPriceIncompleteState.

func (GameMarketPriceIncompleteState) Valid added in v0.4.0

Valid indicates whether the value is a known member of the GameMarketPriceIncompleteState enum.

type GameMarketPriceInvalid added in v0.4.0

type GameMarketPriceInvalid struct {
	// BindingProvenance How the existing sports-board writer bound prices to competitors.
	BindingProvenance *GameMarketPriceBindingProvenance `json:"binding_provenance,omitempty"`

	// CompetitorAIsYes Whether competitor A is the provider YES leg.
	CompetitorAIsYes *bool `json:"competitor_a_is_yes,omitempty"`

	// CompetitorAProviderId The provider competitor id when identity is available.
	CompetitorAProviderId *int64 `json:"competitor_a_provider_id,omitempty"`

	// CompetitorBProviderId The provider competitor id when identity is available.
	CompetitorBProviderId *int64                       `json:"competitor_b_provider_id,omitempty"`
	Reason                GameMarketPriceInvalidReason `json:"reason"`
	State                 GameMarketPriceInvalidState  `json:"state"`
}

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

type GameMarketPriceInvalidReason added in v0.4.0

type GameMarketPriceInvalidReason string

GameMarketPriceInvalidReason defines model for GameMarketPriceInvalid.Reason.

const (
	AmbiguousIdentity      GameMarketPriceInvalidReason = "ambiguous_identity"
	FinalIdentityMismatch  GameMarketPriceInvalidReason = "final_identity_mismatch"
	NonComplementaryPrices GameMarketPriceInvalidReason = "non_complementary_prices"
	NonFinitePrice         GameMarketPriceInvalidReason = "non_finite_price"
	OutOfRangePrice        GameMarketPriceInvalidReason = "out_of_range_price"
	OutcomeCardinality     GameMarketPriceInvalidReason = "outcome_cardinality"
	PriceCardinality       GameMarketPriceInvalidReason = "price_cardinality"
	TeamCardinality        GameMarketPriceInvalidReason = "team_cardinality"
)

Defines values for GameMarketPriceInvalidReason.

func (GameMarketPriceInvalidReason) Valid added in v0.4.0

Valid indicates whether the value is a known member of the GameMarketPriceInvalidReason enum.

type GameMarketPriceInvalidState added in v0.4.0

type GameMarketPriceInvalidState string

GameMarketPriceInvalidState defines model for GameMarketPriceInvalid.State.

const (
	Invalid GameMarketPriceInvalidState = "invalid"
)

Defines values for GameMarketPriceInvalidState.

func (GameMarketPriceInvalidState) Valid added in v0.4.0

Valid indicates whether the value is a known member of the GameMarketPriceInvalidState enum.

type GameMarketPricePaired added in v0.4.0

type GameMarketPricePaired struct {
	// BindingProvenance How the existing sports-board writer bound prices to competitors.
	BindingProvenance GameMarketPriceBindingProvenance `json:"binding_provenance"`

	// CompetitorA One competitor-bound provider moneyline price. No YES/NO inference is required.
	CompetitorA GameMarketPriceCompetitor `json:"competitor_a"`

	// CompetitorAIsYes Whether competitor A is the provider YES leg.
	CompetitorAIsYes bool `json:"competitor_a_is_yes"`

	// CompetitorB One competitor-bound provider moneyline price. No YES/NO inference is required.
	CompetitorB GameMarketPriceCompetitor  `json:"competitor_b"`
	State       GameMarketPricePairedState `json:"state"`
}

GameMarketPricePaired A validated provider moneyline pair bound to the two competitors.

type GameMarketPricePairedState added in v0.4.0

type GameMarketPricePairedState string

GameMarketPricePairedState defines model for GameMarketPricePaired.State.

const (
	Paired GameMarketPricePairedState = "paired"
)

Defines values for GameMarketPricePairedState.

func (GameMarketPricePairedState) Valid added in v0.4.0

func (e GameMarketPricePairedState) Valid() bool

Valid indicates whether the value is a known member of the GameMarketPricePairedState enum.

type GameMarketPrices added in v0.4.0

type GameMarketPrices struct {
	// ObservationSource The clock used for observed_at. board_snapshot is this service’s cache observation, not a provider source timestamp.
	ObservationSource GameMarketPricesObservationSource `json:"observation_source"`

	// ObservedAt Board cache vintage for Gamma or the older CLOB leg clock. Null when no reliable clock is available; never a Gamma-authored timestamp.
	ObservedAt *time.Time               `json:"observed_at"`
	Provider   GameMarketProviderPrices `json:"provider"`
}

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

type GameMarketPricesObservationSource added in v0.4.0

type GameMarketPricesObservationSource string

GameMarketPricesObservationSource The clock used for observed_at. board_snapshot is this service’s cache observation, not a provider source timestamp.

const (
	GameMarketPricesObservationSourceBoardSnapshot GameMarketPricesObservationSource = "board_snapshot"
	GameMarketPricesObservationSourceClobDisplay   GameMarketPricesObservationSource = "clob_display"
)

Defines values for GameMarketPricesObservationSource.

func (GameMarketPricesObservationSource) Valid added in v0.4.0

Valid indicates whether the value is a known member of the GameMarketPricesObservationSource enum.

type GameMarketProviderPrices added in v0.4.0

type GameMarketProviderPrices struct {
	// contains filtered or unexported fields
}

GameMarketProviderPrices defines model for GameMarketProviderPrices.

func (GameMarketProviderPrices) AsGameMarketPriceIncomplete added in v0.4.0

func (t GameMarketProviderPrices) AsGameMarketPriceIncomplete() (GameMarketPriceIncomplete, error)

AsGameMarketPriceIncomplete returns the union data inside the GameMarketProviderPrices as a GameMarketPriceIncomplete

func (GameMarketProviderPrices) AsGameMarketPriceInvalid added in v0.4.0

func (t GameMarketProviderPrices) AsGameMarketPriceInvalid() (GameMarketPriceInvalid, error)

AsGameMarketPriceInvalid returns the union data inside the GameMarketProviderPrices as a GameMarketPriceInvalid

func (GameMarketProviderPrices) AsGameMarketPricePaired added in v0.4.0

func (t GameMarketProviderPrices) AsGameMarketPricePaired() (GameMarketPricePaired, error)

AsGameMarketPricePaired returns the union data inside the GameMarketProviderPrices as a GameMarketPricePaired

func (GameMarketProviderPrices) Discriminator added in v0.4.0

func (t GameMarketProviderPrices) Discriminator() (string, error)

func (*GameMarketProviderPrices) FromGameMarketPriceIncomplete added in v0.4.0

func (t *GameMarketProviderPrices) FromGameMarketPriceIncomplete(v GameMarketPriceIncomplete) error

FromGameMarketPriceIncomplete overwrites any union data inside the GameMarketProviderPrices as the provided GameMarketPriceIncomplete

func (*GameMarketProviderPrices) FromGameMarketPriceInvalid added in v0.4.0

func (t *GameMarketProviderPrices) FromGameMarketPriceInvalid(v GameMarketPriceInvalid) error

FromGameMarketPriceInvalid overwrites any union data inside the GameMarketProviderPrices as the provided GameMarketPriceInvalid

func (*GameMarketProviderPrices) FromGameMarketPricePaired added in v0.4.0

func (t *GameMarketProviderPrices) FromGameMarketPricePaired(v GameMarketPricePaired) error

FromGameMarketPricePaired overwrites any union data inside the GameMarketProviderPrices as the provided GameMarketPricePaired

func (GameMarketProviderPrices) MarshalJSON added in v0.4.0

func (t GameMarketProviderPrices) MarshalJSON() ([]byte, error)

func (*GameMarketProviderPrices) MergeGameMarketPriceIncomplete added in v0.4.0

func (t *GameMarketProviderPrices) MergeGameMarketPriceIncomplete(v GameMarketPriceIncomplete) error

MergeGameMarketPriceIncomplete performs a merge with any union data inside the GameMarketProviderPrices, using the provided GameMarketPriceIncomplete

func (*GameMarketProviderPrices) MergeGameMarketPriceInvalid added in v0.4.0

func (t *GameMarketProviderPrices) MergeGameMarketPriceInvalid(v GameMarketPriceInvalid) error

MergeGameMarketPriceInvalid performs a merge with any union data inside the GameMarketProviderPrices, using the provided GameMarketPriceInvalid

func (*GameMarketProviderPrices) MergeGameMarketPricePaired added in v0.4.0

func (t *GameMarketProviderPrices) MergeGameMarketPricePaired(v GameMarketPricePaired) error

MergeGameMarketPricePaired performs a merge with any union data inside the GameMarketProviderPrices, using the provided GameMarketPricePaired

func (*GameMarketProviderPrices) UnmarshalJSON added in v0.4.0

func (t *GameMarketProviderPrices) UnmarshalJSON(b []byte) error

func (GameMarketProviderPrices) ValueByDiscriminator added in v0.4.0

func (t GameMarketProviderPrices) ValueByDiscriminator() (interface{}, error)

type GameMarketSide added in v0.4.0

type GameMarketSide string

GameMarketSide Which side of the game this market's YES leg pays. draw is a real value: a 1X2 market's third leg is not a competitor. Omitted when the provider ids do not classify the leg, which is not the same as other.

const (
	Away  GameMarketSide = "away"
	Draw  GameMarketSide = "draw"
	Home  GameMarketSide = "home"
	Other GameMarketSide = "other"
)

Defines values for GameMarketSide.

func (GameMarketSide) Valid added in v0.4.0

func (e GameMarketSide) Valid() bool

Valid indicates whether the value is a known member of the GameMarketSide enum.

type GameObject added in v0.4.0

type GameObject string

GameObject defines model for Game.Object.

const (
	GameObjectGame GameObject = "game"
)

Defines values for GameObject.

func (GameObject) Valid added in v0.4.0

func (e GameObject) Valid() bool

Valid indicates whether the value is a known member of the GameObject enum.

type GameStatus added in v0.4.0

type GameStatus struct {
	// Clock The game clock as the provider spells it, never reformatted. Omitted when the provider sent none.
	Clock *string `json:"clock,omitempty"`

	// Ended Whether the game is over. Always present.
	Ended bool `json:"ended"`

	// Live The provider's own in-play flag. Omitted when no live-score frame exists, which is not the same as false.
	Live *bool `json:"live,omitempty"`

	// MatchStatus The provider status folded onto one vocabulary across leagues. unknown means the provider sent a value this API has no meaning for; provider_status keeps that value verbatim. Omitted when no live-score frame carries a status.
	MatchStatus *GameStatusMatchStatus `json:"match_status,omitempty"`

	// Period The provider's period label, for example Q3, End Q2 or T5. Omitted when the provider sent none.
	Period *string `json:"period,omitempty"`

	// ProviderStatus The provider's status string, verbatim. Omitted when the provider sent none.
	ProviderStatus *string `json:"provider_status,omitempty"`

	// State scheduled: kickoff is ahead or the provider still calls it scheduled. live: the provider reports it in play. paused: halftime or a provider-reported break. ended: the provider reported a final, an award or a forfeit. postponed, cancelled, suspended, delayed: the provider's own verdict, kept distinct. unknown: no provider state reached this read. A kickoff in the past is never read as live on its own.
	State GameStatusState `json:"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.

type GameStatusMatchStatus added in v0.4.0

type GameStatusMatchStatus string

GameStatusMatchStatus The provider status folded onto one vocabulary across leagues. unknown means the provider sent a value this API has no meaning for; provider_status keeps that value verbatim. Omitted when no live-score frame carries a status.

const (
	GameStatusMatchStatusAwarded         GameStatusMatchStatus = "awarded"
	GameStatusMatchStatusCancelled       GameStatusMatchStatus = "cancelled"
	GameStatusMatchStatusDelayed         GameStatusMatchStatus = "delayed"
	GameStatusMatchStatusFinal           GameStatusMatchStatus = "final"
	GameStatusMatchStatusFinalOvertime   GameStatusMatchStatus = "final_overtime"
	GameStatusMatchStatusFinalShootout   GameStatusMatchStatus = "final_shootout"
	GameStatusMatchStatusForfeit         GameStatusMatchStatus = "forfeit"
	GameStatusMatchStatusHalftime        GameStatusMatchStatus = "halftime"
	GameStatusMatchStatusInProgress      GameStatusMatchStatus = "in_progress"
	GameStatusMatchStatusNotNecessary    GameStatusMatchStatus = "not_necessary"
	GameStatusMatchStatusPenaltyShootout GameStatusMatchStatus = "penalty_shootout"
	GameStatusMatchStatusPostponed       GameStatusMatchStatus = "postponed"
	GameStatusMatchStatusScheduled       GameStatusMatchStatus = "scheduled"
	GameStatusMatchStatusSuspended       GameStatusMatchStatus = "suspended"
	GameStatusMatchStatusUnknown         GameStatusMatchStatus = "unknown"
)

Defines values for GameStatusMatchStatus.

func (GameStatusMatchStatus) Valid added in v0.4.0

func (e GameStatusMatchStatus) Valid() bool

Valid indicates whether the value is a known member of the GameStatusMatchStatus enum.

type GameStatusState added in v0.4.0

type GameStatusState string

GameStatusState scheduled: kickoff is ahead or the provider still calls it scheduled. live: the provider reports it in play. paused: halftime or a provider-reported break. ended: the provider reported a final, an award or a forfeit. postponed, cancelled, suspended, delayed: the provider's own verdict, kept distinct. unknown: no provider state reached this read. A kickoff in the past is never read as live on its own.

const (
	GameStatusStateCancelled GameStatusState = "cancelled"
	GameStatusStateDelayed   GameStatusState = "delayed"
	GameStatusStateEnded     GameStatusState = "ended"
	GameStatusStateLive      GameStatusState = "live"
	GameStatusStatePaused    GameStatusState = "paused"
	GameStatusStatePostponed GameStatusState = "postponed"
	GameStatusStateScheduled GameStatusState = "scheduled"
	GameStatusStateSuspended GameStatusState = "suspended"
	GameStatusStateUnknown   GameStatusState = "unknown"
)

Defines values for GameStatusState.

func (GameStatusState) Valid added in v0.4.0

func (e GameStatusState) Valid() bool

Valid indicates whether the value is a known member of the GameStatusState enum.

type GamesCoverage added in v0.4.0

type GamesCoverage struct {
	// Leagues League tags served, sorted.
	Leagues []string `json:"leagues"`

	// SourcesUnavailable Scopes whose source half was unavailable for this read, as <sport>:<half>. Empty means every scope answered.
	SourcesUnavailable []string `json:"sources_unavailable"`

	// Sports Canonical sport buckets served, sorted.
	Sports []string `json:"sports"`
}

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.

type GetAccountIdentityParams added in v0.3.0

type GetAccountIdentityParams struct {
	// XQueryValidation Opt into strict query-name validation. The default is compatible: unknown names are ignored and reported in X-Query-Ignored. With strict, an unknown name returns 400 bad_request with error.reason unknown_query_parameter before the handler runs, including when its percent escape is incomplete.
	XQueryValidation *GetAccountIdentityParamsXQueryValidation `json:"X-Query-Validation,omitempty"`
}

GetAccountIdentityParams defines parameters for GetAccountIdentity.

type GetAccountIdentityParamsXQueryValidation added in v0.3.0

type GetAccountIdentityParamsXQueryValidation string

GetAccountIdentityParamsXQueryValidation defines parameters for GetAccountIdentity.

const (
	GetAccountIdentityParamsXQueryValidationStrict GetAccountIdentityParamsXQueryValidation = "strict"
)

Defines values for GetAccountIdentityParamsXQueryValidation.

func (GetAccountIdentityParamsXQueryValidation) Valid added in v0.3.0

Valid indicates whether the value is a known member of the GetAccountIdentityParamsXQueryValidation enum.

type GetAccountIdentityResponse added in v0.2.0

type GetAccountIdentityResponse struct {
	Body         []byte
	HTTPResponse *http.Response
	// JSON200 the response for an HTTP 200 `application/json` response
	JSON200 *AccountIdentity
	// JSON401 the response for an HTTP 401 `application/json` response
	JSON401 *ApiError
	// JSON403 the response for an HTTP 403 `application/json` response
	JSON403 *ApiError
	// JSON423 the response for an HTTP 423 `application/json` response
	JSON423 *ApiError
	// JSON429 the response for an HTTP 429 `application/json` response
	JSON429 *ApiError
	// JSON500 the response for an HTTP 500 `application/json` response
	JSON500 *ApiError
	// JSON503 the response for an HTTP 503 `application/json` response
	JSON503 *ApiError
	// Headers200 the parsed response headers for an HTTP 200 response
	Headers200 *GetAccountIdentityResponse200Headers
	// Headers429 the parsed response headers for an HTTP 429 response
	Headers429 *GetAccountIdentityResponse429Headers
	// Headers503 the parsed response headers for an HTTP 503 response
	Headers503 *GetAccountIdentityResponse503Headers
}

func ParseGetAccountIdentityResponse added in v0.2.0

func ParseGetAccountIdentityResponse(rsp *http.Response) (*GetAccountIdentityResponse, error)

ParseGetAccountIdentityResponse parses an HTTP response from a GetAccountIdentityWithResponse call

func (GetAccountIdentityResponse) ContentType added in v0.2.0

func (r GetAccountIdentityResponse) ContentType() string

ContentType is a convenience method to retrieve the Content-Type value from the HTTP response headers

func (GetAccountIdentityResponse) GetBody added in v0.2.0

func (r GetAccountIdentityResponse) GetBody() []byte

GetBody returns the raw response body bytes

func (GetAccountIdentityResponse) GetJSON200 added in v0.2.0

GetJSON200 returns the response for an HTTP 200 `application/json` response

func (GetAccountIdentityResponse) GetJSON401 added in v0.2.0

func (r GetAccountIdentityResponse) GetJSON401() *ApiError

GetJSON401 returns the response for an HTTP 401 `application/json` response

func (GetAccountIdentityResponse) GetJSON403 added in v0.2.0

func (r GetAccountIdentityResponse) GetJSON403() *ApiError

GetJSON403 returns the response for an HTTP 403 `application/json` response

func (GetAccountIdentityResponse) GetJSON423 added in v0.2.0

func (r GetAccountIdentityResponse) GetJSON423() *ApiError

GetJSON423 returns the response for an HTTP 423 `application/json` response

func (GetAccountIdentityResponse) GetJSON429 added in v0.2.0

func (r GetAccountIdentityResponse) GetJSON429() *ApiError

GetJSON429 returns the response for an HTTP 429 `application/json` response

func (GetAccountIdentityResponse) GetJSON500 added in v0.4.0

func (r GetAccountIdentityResponse) GetJSON500() *ApiError

GetJSON500 returns the response for an HTTP 500 `application/json` response

func (GetAccountIdentityResponse) GetJSON503 added in v0.2.0

func (r GetAccountIdentityResponse) GetJSON503() *ApiError

GetJSON503 returns the response for an HTTP 503 `application/json` response

func (GetAccountIdentityResponse) Status added in v0.2.0

Status returns HTTPResponse.Status

func (GetAccountIdentityResponse) StatusCode added in v0.2.0

func (r GetAccountIdentityResponse) StatusCode() int

StatusCode returns HTTPResponse.StatusCode

type GetAccountIdentityResponse200Headers added in v0.2.0

type GetAccountIdentityResponse200Headers struct {
	RateLimitLimit         *int
	RateLimitRemaining     *int
	RateLimitReset         *int
	ServerTiming           *string
	XEffectiveQuery        *string
	XMonthlyQuotaLimit     *int
	XMonthlyQuotaRemaining *int
	XMonthlyQuotaReset     *int
	XQueryIgnored          *string
	XRateLimitLimit        *int
	XRateLimitRemaining    *int
	XRateLimitReset        *int
	XRequestId             *string
}

GetAccountIdentityResponse200Headers the declared response headers of an HTTP 200 response for GetAccountIdentity

type GetAccountIdentityResponse429Headers added in v0.2.0

type GetAccountIdentityResponse429Headers struct {
	RateLimitLimit      *int
	RateLimitRemaining  *int
	RateLimitReset      *int
	RetryAfter          *int
	XRateLimitLimit     *int
	XRateLimitRemaining *int
	XRateLimitReset     *int
	XRequestId          *string
}

GetAccountIdentityResponse429Headers the declared response headers of an HTTP 429 response for GetAccountIdentity

type GetAccountIdentityResponse503Headers added in v0.2.0

type GetAccountIdentityResponse503Headers struct {
	RetryAfter *int
	XRequestId *string
}

GetAccountIdentityResponse503Headers the declared response headers of an HTTP 503 response for GetAccountIdentity

type GetApiDiscovery200JSONResponseBodyObject

type GetApiDiscovery200JSONResponseBodyObject string

GetApiDiscovery200JSONResponseBodyObject defines parameters for GetApiDiscovery.

const (
	GetApiDiscovery200JSONResponseBodyObjectApiDiscovery GetApiDiscovery200JSONResponseBodyObject = "api_discovery"
)

Defines values for GetApiDiscovery200JSONResponseBodyObject.

func (GetApiDiscovery200JSONResponseBodyObject) Valid

Valid indicates whether the value is a known member of the GetApiDiscovery200JSONResponseBodyObject enum.

type GetApiDiscoveryParams added in v0.3.0

type GetApiDiscoveryParams struct {
	// XQueryValidation Opt into strict query-name validation. The default is compatible: unknown names are ignored and reported in X-Query-Ignored. With strict, an unknown name returns 400 bad_request with error.reason unknown_query_parameter before the handler runs, including when its percent escape is incomplete.
	XQueryValidation *GetApiDiscoveryParamsXQueryValidation `json:"X-Query-Validation,omitempty"`
}

GetApiDiscoveryParams defines parameters for GetApiDiscovery.

type GetApiDiscoveryParamsXQueryValidation added in v0.3.0

type GetApiDiscoveryParamsXQueryValidation string

GetApiDiscoveryParamsXQueryValidation defines parameters for GetApiDiscovery.

const (
	GetApiDiscoveryParamsXQueryValidationStrict GetApiDiscoveryParamsXQueryValidation = "strict"
)

Defines values for GetApiDiscoveryParamsXQueryValidation.

func (GetApiDiscoveryParamsXQueryValidation) Valid added in v0.3.0

Valid indicates whether the value is a known member of the GetApiDiscoveryParamsXQueryValidation enum.

type GetApiDiscoveryResponse

type GetApiDiscoveryResponse struct {
	Body         []byte
	HTTPResponse *http.Response
	// JSON200 the response for an HTTP 200 `application/json` response
	JSON200 *struct {
		Data   ApiDiscovery                             `json:"data"`
		Meta   ResponseMeta                             `json:"meta"`
		Object GetApiDiscovery200JSONResponseBodyObject `json:"object"`
	}
	// JSON408 the response for an HTTP 408 `application/json` response
	JSON408 *ApiError
	// JSON429 the response for an HTTP 429 `application/json` response
	JSON429 *ApiError
	// JSON500 the response for an HTTP 500 `application/json` response
	JSON500 *ApiError
	// Headers200 the parsed response headers for an HTTP 200 response
	Headers200 *GetApiDiscoveryResponse200Headers
	// Headers429 the parsed response headers for an HTTP 429 response
	Headers429 *GetApiDiscoveryResponse429Headers
}

func ParseGetApiDiscoveryResponse

func ParseGetApiDiscoveryResponse(rsp *http.Response) (*GetApiDiscoveryResponse, error)

ParseGetApiDiscoveryResponse parses an HTTP response from a GetApiDiscoveryWithResponse call

func (GetApiDiscoveryResponse) ContentType

func (r GetApiDiscoveryResponse) ContentType() string

ContentType is a convenience method to retrieve the Content-Type value from the HTTP response headers

func (GetApiDiscoveryResponse) GetBody

func (r GetApiDiscoveryResponse) GetBody() []byte

GetBody returns the raw response body bytes

func (GetApiDiscoveryResponse) GetJSON200

func (r GetApiDiscoveryResponse) GetJSON200() *struct {
	Data   ApiDiscovery                             `json:"data"`
	Meta   ResponseMeta                             `json:"meta"`
	Object GetApiDiscovery200JSONResponseBodyObject `json:"object"`
}

GetJSON200 returns the response for an HTTP 200 `application/json` response

func (GetApiDiscoveryResponse) GetJSON408 added in v0.2.0

func (r GetApiDiscoveryResponse) GetJSON408() *ApiError

GetJSON408 returns the response for an HTTP 408 `application/json` response

func (GetApiDiscoveryResponse) GetJSON429

func (r GetApiDiscoveryResponse) GetJSON429() *ApiError

GetJSON429 returns the response for an HTTP 429 `application/json` response

func (GetApiDiscoveryResponse) GetJSON500 added in v0.4.0

func (r GetApiDiscoveryResponse) GetJSON500() *ApiError

GetJSON500 returns the response for an HTTP 500 `application/json` response

func (GetApiDiscoveryResponse) Status

func (r GetApiDiscoveryResponse) Status() string

Status returns HTTPResponse.Status

func (GetApiDiscoveryResponse) StatusCode

func (r GetApiDiscoveryResponse) StatusCode() int

StatusCode returns HTTPResponse.StatusCode

type GetApiDiscoveryResponse200Headers added in v0.2.0

type GetApiDiscoveryResponse200Headers struct {
	RateLimitLimit      *int
	RateLimitRemaining  *int
	RateLimitReset      *int
	ServerTiming        *string
	XEffectiveQuery     *string
	XQueryIgnored       *string
	XRateLimitLimit     *int
	XRateLimitRemaining *int
	XRateLimitReset     *int
}

GetApiDiscoveryResponse200Headers the declared response headers of an HTTP 200 response for GetApiDiscovery

type GetApiDiscoveryResponse429Headers

type GetApiDiscoveryResponse429Headers struct {
	RateLimitLimit      *int
	RateLimitRemaining  *int
	RateLimitReset      *int
	RetryAfter          *int
	XRateLimitLimit     *int
	XRateLimitRemaining *int
	XRateLimitReset     *int
	XRequestId          *string
}

GetApiDiscoveryResponse429Headers the declared response headers of an HTTP 429 response for GetApiDiscovery

type GetCoverage200JSONResponseBodyObject added in v0.4.0

type GetCoverage200JSONResponseBodyObject string

GetCoverage200JSONResponseBodyObject defines parameters for GetCoverage.

const (
	GetCoverage200JSONResponseBodyObjectPlatforms GetCoverage200JSONResponseBodyObject = "platforms"
)

Defines values for GetCoverage200JSONResponseBodyObject.

func (GetCoverage200JSONResponseBodyObject) Valid added in v0.4.0

Valid indicates whether the value is a known member of the GetCoverage200JSONResponseBodyObject enum.

type GetCoverageParams added in v0.4.0

type GetCoverageParams struct {
	// XQueryValidation Opt into strict query-name validation. The default is compatible: unknown names are ignored and reported in X-Query-Ignored. With strict, an unknown name returns 400 bad_request with error.reason unknown_query_parameter before the handler runs, including when its percent escape is incomplete.
	XQueryValidation *GetCoverageParamsXQueryValidation `json:"X-Query-Validation,omitempty"`
}

GetCoverageParams defines parameters for GetCoverage.

type GetCoverageParamsXQueryValidation added in v0.4.0

type GetCoverageParamsXQueryValidation string

GetCoverageParamsXQueryValidation defines parameters for GetCoverage.

const (
	GetCoverageParamsXQueryValidationStrict GetCoverageParamsXQueryValidation = "strict"
)

Defines values for GetCoverageParamsXQueryValidation.

func (GetCoverageParamsXQueryValidation) Valid added in v0.4.0

Valid indicates whether the value is a known member of the GetCoverageParamsXQueryValidation enum.

type GetCoverageResponse added in v0.4.0

type GetCoverageResponse struct {
	Body         []byte
	HTTPResponse *http.Response
	// JSON200 the response for an HTTP 200 `application/json` response
	JSON200 *struct {
		Data   Platforms                            `json:"data"`
		Meta   ResponseMeta                         `json:"meta"`
		Object GetCoverage200JSONResponseBodyObject `json:"object"`
	}
	// JSON408 the response for an HTTP 408 `application/json` response
	JSON408 *ApiError
	// JSON429 the response for an HTTP 429 `application/json` response
	JSON429 *ApiError
	// JSON500 the response for an HTTP 500 `application/json` response
	JSON500 *ApiError
	// Headers200 the parsed response headers for an HTTP 200 response
	Headers200 *GetCoverageResponse200Headers
	// Headers429 the parsed response headers for an HTTP 429 response
	Headers429 *GetCoverageResponse429Headers
}

func ParseGetCoverageResponse added in v0.4.0

func ParseGetCoverageResponse(rsp *http.Response) (*GetCoverageResponse, error)

ParseGetCoverageResponse parses an HTTP response from a GetCoverageWithResponse call

func (GetCoverageResponse) ContentType added in v0.4.0

func (r GetCoverageResponse) ContentType() string

ContentType is a convenience method to retrieve the Content-Type value from the HTTP response headers

func (GetCoverageResponse) GetBody added in v0.4.0

func (r GetCoverageResponse) GetBody() []byte

GetBody returns the raw response body bytes

func (GetCoverageResponse) GetJSON200 added in v0.4.0

func (r GetCoverageResponse) GetJSON200() *struct {
	Data   Platforms                            `json:"data"`
	Meta   ResponseMeta                         `json:"meta"`
	Object GetCoverage200JSONResponseBodyObject `json:"object"`
}

GetJSON200 returns the response for an HTTP 200 `application/json` response

func (GetCoverageResponse) GetJSON408 added in v0.4.0

func (r GetCoverageResponse) GetJSON408() *ApiError

GetJSON408 returns the response for an HTTP 408 `application/json` response

func (GetCoverageResponse) GetJSON429 added in v0.4.0

func (r GetCoverageResponse) GetJSON429() *ApiError

GetJSON429 returns the response for an HTTP 429 `application/json` response

func (GetCoverageResponse) GetJSON500 added in v0.4.0

func (r GetCoverageResponse) GetJSON500() *ApiError

GetJSON500 returns the response for an HTTP 500 `application/json` response

func (GetCoverageResponse) Status added in v0.4.0

func (r GetCoverageResponse) Status() string

Status returns HTTPResponse.Status

func (GetCoverageResponse) StatusCode added in v0.4.0

func (r GetCoverageResponse) StatusCode() int

StatusCode returns HTTPResponse.StatusCode

type GetCoverageResponse200Headers added in v0.4.0

type GetCoverageResponse200Headers struct {
	RateLimitLimit      *int
	RateLimitRemaining  *int
	RateLimitReset      *int
	ServerTiming        *string
	XEffectiveQuery     *string
	XQueryIgnored       *string
	XRateLimitLimit     *int
	XRateLimitRemaining *int
	XRateLimitReset     *int
}

GetCoverageResponse200Headers the declared response headers of an HTTP 200 response for GetCoverage

type GetCoverageResponse429Headers added in v0.4.0

type GetCoverageResponse429Headers struct {
	RateLimitLimit      *int
	RateLimitRemaining  *int
	RateLimitReset      *int
	RetryAfter          *int
	XRateLimitLimit     *int
	XRateLimitRemaining *int
	XRateLimitReset     *int
	XRequestId          *string
}

GetCoverageResponse429Headers the declared response headers of an HTTP 429 response for GetCoverage

type GetDailyReportSnapshot200JSONResponseBodyObject

type GetDailyReportSnapshot200JSONResponseBodyObject string

GetDailyReportSnapshot200JSONResponseBodyObject defines parameters for GetDailyReportSnapshot.

const (
	GetDailyReportSnapshot200JSONResponseBodyObjectReportSnapshot GetDailyReportSnapshot200JSONResponseBodyObject = "report_snapshot"
)

Defines values for GetDailyReportSnapshot200JSONResponseBodyObject.

func (GetDailyReportSnapshot200JSONResponseBodyObject) Valid

Valid indicates whether the value is a known member of the GetDailyReportSnapshot200JSONResponseBodyObject enum.

type GetDailyReportSnapshotParams

type GetDailyReportSnapshotParams struct {
	// Date UTC report date in YYYY-MM-DD format, from 2024-03-01 (the first day report data covers) through tomorrow UTC. Any other date returns 400 bad_request with error.param=date.
	Date string `form:"date" json:"date"`

	// XQueryValidation Opt into strict query-name validation. The default is compatible: unknown names are ignored and reported in X-Query-Ignored. With strict, an unknown name returns 400 bad_request with error.reason unknown_query_parameter before the handler runs, including when its percent escape is incomplete.
	XQueryValidation *GetDailyReportSnapshotParamsXQueryValidation `json:"X-Query-Validation,omitempty"`
}

GetDailyReportSnapshotParams defines parameters for GetDailyReportSnapshot.

type GetDailyReportSnapshotParamsXQueryValidation added in v0.3.0

type GetDailyReportSnapshotParamsXQueryValidation string

GetDailyReportSnapshotParamsXQueryValidation defines parameters for GetDailyReportSnapshot.

const (
	GetDailyReportSnapshotParamsXQueryValidationStrict GetDailyReportSnapshotParamsXQueryValidation = "strict"
)

Defines values for GetDailyReportSnapshotParamsXQueryValidation.

func (GetDailyReportSnapshotParamsXQueryValidation) Valid added in v0.3.0

Valid indicates whether the value is a known member of the GetDailyReportSnapshotParamsXQueryValidation enum.

type GetDailyReportSnapshotResponse

type GetDailyReportSnapshotResponse struct {
	Body         []byte
	HTTPResponse *http.Response
	// JSON200 the response for an HTTP 200 `application/json` response
	JSON200 *struct {
		Data   ReportSnapshot                                  `json:"data"`
		Meta   ResponseMeta                                    `json:"meta"`
		Object GetDailyReportSnapshot200JSONResponseBodyObject `json:"object"`
	}
	// JSON400 the response for an HTTP 400 `application/json` response
	JSON400 *ApiError
	// JSON401 the response for an HTTP 401 `application/json` response
	JSON401 *ApiError
	// JSON402 the response for an HTTP 402 `application/json` response
	JSON402 *ApiError
	// JSON403 the response for an HTTP 403 `application/json` response
	JSON403 *ApiError
	// JSON408 the response for an HTTP 408 `application/json` response
	JSON408 *ApiError
	// JSON423 the response for an HTTP 423 `application/json` response
	JSON423 *ApiError
	// JSON429 the response for an HTTP 429 `application/json` response
	JSON429 *ApiError
	// JSON500 the response for an HTTP 500 `application/json` response
	JSON500 *ApiError
	// JSON503 the response for an HTTP 503 `application/json` response
	JSON503 *ApiError
	// Headers200 the parsed response headers for an HTTP 200 response
	Headers200 *GetDailyReportSnapshotResponse200Headers
	// Headers429 the parsed response headers for an HTTP 429 response
	Headers429 *GetDailyReportSnapshotResponse429Headers
	// Headers503 the parsed response headers for an HTTP 503 response
	Headers503 *GetDailyReportSnapshotResponse503Headers
}

func ParseGetDailyReportSnapshotResponse

func ParseGetDailyReportSnapshotResponse(rsp *http.Response) (*GetDailyReportSnapshotResponse, error)

ParseGetDailyReportSnapshotResponse parses an HTTP response from a GetDailyReportSnapshotWithResponse call

func (GetDailyReportSnapshotResponse) ContentType

func (r GetDailyReportSnapshotResponse) ContentType() string

ContentType is a convenience method to retrieve the Content-Type value from the HTTP response headers

func (GetDailyReportSnapshotResponse) GetBody

func (r GetDailyReportSnapshotResponse) GetBody() []byte

GetBody returns the raw response body bytes

func (GetDailyReportSnapshotResponse) GetJSON200

func (r GetDailyReportSnapshotResponse) GetJSON200() *struct {
	Data   ReportSnapshot                                  `json:"data"`
	Meta   ResponseMeta                                    `json:"meta"`
	Object GetDailyReportSnapshot200JSONResponseBodyObject `json:"object"`
}

GetJSON200 returns the response for an HTTP 200 `application/json` response

func (GetDailyReportSnapshotResponse) GetJSON400

func (r GetDailyReportSnapshotResponse) GetJSON400() *ApiError

GetJSON400 returns the response for an HTTP 400 `application/json` response

func (GetDailyReportSnapshotResponse) GetJSON401

func (r GetDailyReportSnapshotResponse) GetJSON401() *ApiError

GetJSON401 returns the response for an HTTP 401 `application/json` response

func (GetDailyReportSnapshotResponse) GetJSON402

func (r GetDailyReportSnapshotResponse) GetJSON402() *ApiError

GetJSON402 returns the response for an HTTP 402 `application/json` response

func (GetDailyReportSnapshotResponse) GetJSON403

func (r GetDailyReportSnapshotResponse) GetJSON403() *ApiError

GetJSON403 returns the response for an HTTP 403 `application/json` response

func (GetDailyReportSnapshotResponse) GetJSON408 added in v0.2.0

func (r GetDailyReportSnapshotResponse) GetJSON408() *ApiError

GetJSON408 returns the response for an HTTP 408 `application/json` response

func (GetDailyReportSnapshotResponse) GetJSON423

func (r GetDailyReportSnapshotResponse) GetJSON423() *ApiError

GetJSON423 returns the response for an HTTP 423 `application/json` response

func (GetDailyReportSnapshotResponse) GetJSON429

func (r GetDailyReportSnapshotResponse) GetJSON429() *ApiError

GetJSON429 returns the response for an HTTP 429 `application/json` response

func (GetDailyReportSnapshotResponse) GetJSON500

func (r GetDailyReportSnapshotResponse) GetJSON500() *ApiError

GetJSON500 returns the response for an HTTP 500 `application/json` response

func (GetDailyReportSnapshotResponse) GetJSON503

func (r GetDailyReportSnapshotResponse) GetJSON503() *ApiError

GetJSON503 returns the response for an HTTP 503 `application/json` response

func (GetDailyReportSnapshotResponse) Status

Status returns HTTPResponse.Status

func (GetDailyReportSnapshotResponse) StatusCode

func (r GetDailyReportSnapshotResponse) StatusCode() int

StatusCode returns HTTPResponse.StatusCode

type GetDailyReportSnapshotResponse200Headers

type GetDailyReportSnapshotResponse200Headers struct {
	RateLimitLimit      *int
	RateLimitRemaining  *int
	RateLimitReset      *int
	ServerTiming        *string
	XEffectiveQuery     *string
	XQueryIgnored       *string
	XRateLimitLimit     *int
	XRateLimitRemaining *int
	XRateLimitReset     *int
	XRequestId          *string
	XUsageAccounting    *string
}

GetDailyReportSnapshotResponse200Headers the declared response headers of an HTTP 200 response for GetDailyReportSnapshot

type GetDailyReportSnapshotResponse429Headers

type GetDailyReportSnapshotResponse429Headers struct {
	RateLimitLimit      *int
	RateLimitRemaining  *int
	RateLimitReset      *int
	RetryAfter          *int
	XRateLimitLimit     *int
	XRateLimitRemaining *int
	XRateLimitReset     *int
	XRequestId          *string
}

GetDailyReportSnapshotResponse429Headers the declared response headers of an HTTP 429 response for GetDailyReportSnapshot

type GetDailyReportSnapshotResponse503Headers

type GetDailyReportSnapshotResponse503Headers struct {
	RetryAfter *int
	XRequestId *string
}

GetDailyReportSnapshotResponse503Headers the declared response headers of an HTTP 503 response for GetDailyReportSnapshot

type GetEventReplaySince200JSONResponseBodyObject

type GetEventReplaySince200JSONResponseBodyObject string

GetEventReplaySince200JSONResponseBodyObject defines parameters for GetEventReplaySince.

const (
	EventReplay GetEventReplaySince200JSONResponseBodyObject = "event_replay"
)

Defines values for GetEventReplaySince200JSONResponseBodyObject.

func (GetEventReplaySince200JSONResponseBodyObject) Valid

Valid indicates whether the value is a known member of the GetEventReplaySince200JSONResponseBodyObject enum.

type GetEventReplaySinceParams

type GetEventReplaySinceParams struct {
	// Cursor Opaque event replay cursor returned as next_cursor by a prior response. The cursor maps to the global (whale_alerts.inserted_xid, whale_alerts.id) commit-order position, is valid across backend replicas, and is bound to the filter set the walk ran with (trader, condition_id, min_grade, min_size): presenting it under different filters answers 400 bad_request with error.reason cursor_expired, and the walk restarts without a cursor. Cursors issued before 2026-09-22 (id-only) stay accepted and are bound to no filters. Omit to fetch the latest durable public suffix.
	Cursor *string `form:"cursor,omitempty" json:"cursor,omitempty"`

	// Limit Maximum durable public whale-trade events to return. Out-of-range values are clamped to 1..100.
	Limit *int `form:"limit,omitempty" json:"limit,omitempty"`

	// Trader Only this wallet's trades: a wallet address, trd_-prefixed trader id or username resolved against the traders table. Bound to the cursor: a cursor issued under other filters answers 400 with error.reason cursor_expired. An unknown trader matches nothing and the walk still advances.
	Trader *string `form:"trader,omitempty" json:"trader,omitempty"`

	// ConditionId Only trades on this market: the raw provider condition_id or its mkt_-prefixed id. Bound to the cursor.
	ConditionId *string `form:"condition_id,omitempty" json:"condition_id,omitempty"`

	// MinGrade Only trades by wallets at this grade or better (S best), read from the wallet's newest ranking at request time; a wallet with no grade never passes. Bound to the cursor.
	MinGrade *GetEventReplaySinceParamsMinGrade `form:"min_grade,omitempty" json:"min_grade,omitempty"`

	// MinSize Only trades of at least this USD amount. Decimal and scientific query spellings normalize exactly to cents, rounding half away from zero; maximum 1e15 USD. Pass the dataset continuation decimal string unchanged to preserve the bound. Bound to the cursor.
	MinSize *string `form:"min_size,omitempty" json:"min_size,omitempty"`

	// Expand Repeatable. trade adds the public trade read to every event (the object GET /api/v1/whale-trades/{id} returns for it), from one query per page, so a page of 100 events needs no per-event detail request. Not bound to the cursor: switch it on or off mid-walk.
	Expand *[]GetEventReplaySinceParamsExpand `form:"expand,omitempty" json:"expand,omitempty"`

	// XQueryValidation Opt into strict query-name validation. The default is compatible: unknown names are ignored and reported in X-Query-Ignored. With strict, an unknown name returns 400 bad_request with error.reason unknown_query_parameter before the handler runs, including when its percent escape is incomplete.
	XQueryValidation *GetEventReplaySinceParamsXQueryValidation `json:"X-Query-Validation,omitempty"`
}

GetEventReplaySinceParams defines parameters for GetEventReplaySince.

type GetEventReplaySinceParamsExpand added in v0.3.0

type GetEventReplaySinceParamsExpand string

GetEventReplaySinceParamsExpand defines parameters for GetEventReplaySince.

const (
	GetEventReplaySinceParamsExpandTrade GetEventReplaySinceParamsExpand = "trade"
)

Defines values for GetEventReplaySinceParamsExpand.

func (GetEventReplaySinceParamsExpand) Valid added in v0.3.0

Valid indicates whether the value is a known member of the GetEventReplaySinceParamsExpand enum.

type GetEventReplaySinceParamsMinGrade added in v0.3.0

type GetEventReplaySinceParamsMinGrade string

GetEventReplaySinceParamsMinGrade defines parameters for GetEventReplaySince.

const (
	GetEventReplaySinceParamsMinGradeA GetEventReplaySinceParamsMinGrade = "A"
	GetEventReplaySinceParamsMinGradeB GetEventReplaySinceParamsMinGrade = "B"
	GetEventReplaySinceParamsMinGradeC GetEventReplaySinceParamsMinGrade = "C"
	GetEventReplaySinceParamsMinGradeD GetEventReplaySinceParamsMinGrade = "D"
	GetEventReplaySinceParamsMinGradeF GetEventReplaySinceParamsMinGrade = "F"
	GetEventReplaySinceParamsMinGradeS GetEventReplaySinceParamsMinGrade = "S"
)

Defines values for GetEventReplaySinceParamsMinGrade.

func (GetEventReplaySinceParamsMinGrade) Valid added in v0.3.0

Valid indicates whether the value is a known member of the GetEventReplaySinceParamsMinGrade enum.

type GetEventReplaySinceParamsXQueryValidation added in v0.3.0

type GetEventReplaySinceParamsXQueryValidation string

GetEventReplaySinceParamsXQueryValidation defines parameters for GetEventReplaySince.

const (
	GetEventReplaySinceParamsXQueryValidationStrict GetEventReplaySinceParamsXQueryValidation = "strict"
)

Defines values for GetEventReplaySinceParamsXQueryValidation.

func (GetEventReplaySinceParamsXQueryValidation) Valid added in v0.3.0

Valid indicates whether the value is a known member of the GetEventReplaySinceParamsXQueryValidation enum.

type GetEventReplaySinceResponse

type GetEventReplaySinceResponse struct {
	Body         []byte
	HTTPResponse *http.Response
	// JSON200 the response for an HTTP 200 `application/json` response
	JSON200 *struct {
		Data       []EventReplayEvent                           `json:"data"`
		HasMore    bool                                         `json:"has_more"`
		Meta       EventReplayMeta                              `json:"meta"`
		NextCursor string                                       `json:"next_cursor"`
		Object     GetEventReplaySince200JSONResponseBodyObject `json:"object"`
	}
	// JSON400 the response for an HTTP 400 `application/json` response
	JSON400 *ApiError
	// JSON401 the response for an HTTP 401 `application/json` response
	JSON401 *ApiError
	// JSON402 the response for an HTTP 402 `application/json` response
	JSON402 *ApiError
	// JSON403 the response for an HTTP 403 `application/json` response
	JSON403 *ApiError
	// JSON408 the response for an HTTP 408 `application/json` response
	JSON408 *ApiError
	// JSON423 the response for an HTTP 423 `application/json` response
	JSON423 *ApiError
	// JSON429 the response for an HTTP 429 `application/json` response
	JSON429 *ApiError
	// JSON500 the response for an HTTP 500 `application/json` response
	JSON500 *ApiError
	// JSON503 the response for an HTTP 503 `application/json` response
	JSON503 *ApiError
	// Headers200 the parsed response headers for an HTTP 200 response
	Headers200 *GetEventReplaySinceResponse200Headers
	// Headers429 the parsed response headers for an HTTP 429 response
	Headers429 *GetEventReplaySinceResponse429Headers
	// Headers503 the parsed response headers for an HTTP 503 response
	Headers503 *GetEventReplaySinceResponse503Headers
}

func ParseGetEventReplaySinceResponse

func ParseGetEventReplaySinceResponse(rsp *http.Response) (*GetEventReplaySinceResponse, error)

ParseGetEventReplaySinceResponse parses an HTTP response from a GetEventReplaySinceWithResponse call

func (GetEventReplaySinceResponse) ContentType

func (r GetEventReplaySinceResponse) ContentType() string

ContentType is a convenience method to retrieve the Content-Type value from the HTTP response headers

func (GetEventReplaySinceResponse) GetBody

func (r GetEventReplaySinceResponse) GetBody() []byte

GetBody returns the raw response body bytes

func (GetEventReplaySinceResponse) GetJSON200

func (r GetEventReplaySinceResponse) GetJSON200() *struct {
	Data       []EventReplayEvent                           `json:"data"`
	HasMore    bool                                         `json:"has_more"`
	Meta       EventReplayMeta                              `json:"meta"`
	NextCursor string                                       `json:"next_cursor"`
	Object     GetEventReplaySince200JSONResponseBodyObject `json:"object"`
}

GetJSON200 returns the response for an HTTP 200 `application/json` response

func (GetEventReplaySinceResponse) GetJSON400

func (r GetEventReplaySinceResponse) GetJSON400() *ApiError

GetJSON400 returns the response for an HTTP 400 `application/json` response

func (GetEventReplaySinceResponse) GetJSON401

func (r GetEventReplaySinceResponse) GetJSON401() *ApiError

GetJSON401 returns the response for an HTTP 401 `application/json` response

func (GetEventReplaySinceResponse) GetJSON402

func (r GetEventReplaySinceResponse) GetJSON402() *ApiError

GetJSON402 returns the response for an HTTP 402 `application/json` response

func (GetEventReplaySinceResponse) GetJSON403

func (r GetEventReplaySinceResponse) GetJSON403() *ApiError

GetJSON403 returns the response for an HTTP 403 `application/json` response

func (GetEventReplaySinceResponse) GetJSON408 added in v0.2.0

func (r GetEventReplaySinceResponse) GetJSON408() *ApiError

GetJSON408 returns the response for an HTTP 408 `application/json` response

func (GetEventReplaySinceResponse) GetJSON423

func (r GetEventReplaySinceResponse) GetJSON423() *ApiError

GetJSON423 returns the response for an HTTP 423 `application/json` response

func (GetEventReplaySinceResponse) GetJSON429

func (r GetEventReplaySinceResponse) GetJSON429() *ApiError

GetJSON429 returns the response for an HTTP 429 `application/json` response

func (GetEventReplaySinceResponse) GetJSON500 added in v0.4.0

func (r GetEventReplaySinceResponse) GetJSON500() *ApiError

GetJSON500 returns the response for an HTTP 500 `application/json` response

func (GetEventReplaySinceResponse) GetJSON503

func (r GetEventReplaySinceResponse) GetJSON503() *ApiError

GetJSON503 returns the response for an HTTP 503 `application/json` response

func (GetEventReplaySinceResponse) Status

Status returns HTTPResponse.Status

func (GetEventReplaySinceResponse) StatusCode

func (r GetEventReplaySinceResponse) StatusCode() int

StatusCode returns HTTPResponse.StatusCode

type GetEventReplaySinceResponse200Headers

type GetEventReplaySinceResponse200Headers struct {
	RateLimitLimit      *int
	RateLimitRemaining  *int
	RateLimitReset      *int
	ServerTiming        *string
	XEffectiveQuery     *string
	XQueryIgnored       *string
	XRateLimitLimit     *int
	XRateLimitRemaining *int
	XRateLimitReset     *int
	XRequestId          *string
	XUsageAccounting    *string
}

GetEventReplaySinceResponse200Headers the declared response headers of an HTTP 200 response for GetEventReplaySince

type GetEventReplaySinceResponse429Headers

type GetEventReplaySinceResponse429Headers struct {
	RateLimitLimit      *int
	RateLimitRemaining  *int
	RateLimitReset      *int
	RetryAfter          *int
	XRateLimitLimit     *int
	XRateLimitRemaining *int
	XRateLimitReset     *int
	XRequestId          *string
}

GetEventReplaySinceResponse429Headers the declared response headers of an HTTP 429 response for GetEventReplaySince

type GetEventReplaySinceResponse503Headers

type GetEventReplaySinceResponse503Headers struct {
	RetryAfter *int
	XRequestId *string
}

GetEventReplaySinceResponse503Headers the declared response headers of an HTTP 503 response for GetEventReplaySince

type GetGame200JSONResponseBodyObject added in v0.4.0

type GetGame200JSONResponseBodyObject string

GetGame200JSONResponseBodyObject defines parameters for GetGame.

const (
	GetGame200JSONResponseBodyObjectGame GetGame200JSONResponseBodyObject = "game"
)

Defines values for GetGame200JSONResponseBodyObject.

func (GetGame200JSONResponseBodyObject) Valid added in v0.4.0

Valid indicates whether the value is a known member of the GetGame200JSONResponseBodyObject enum.

type GetGameParams added in v0.4.0

type GetGameParams struct {
	// XQueryValidation Opt into strict query-name validation. The default is compatible: unknown names are ignored and reported in X-Query-Ignored. With strict, an unknown name returns 400 bad_request with error.reason unknown_query_parameter before the handler runs, including when its percent escape is incomplete.
	XQueryValidation *GetGameParamsXQueryValidation `json:"X-Query-Validation,omitempty"`

	// IfNoneMatch Conditional GET using a weak semantic ETag from an earlier response. A matching payload returns 304 with an empty body; request_id, cost and as_of are excluded from the validator, so a rebuilt but unchanged catalog still revalidates.
	IfNoneMatch *string `json:"If-None-Match,omitempty"`
}

GetGameParams defines parameters for GetGame.

type GetGameParamsXQueryValidation added in v0.4.0

type GetGameParamsXQueryValidation string

GetGameParamsXQueryValidation defines parameters for GetGame.

const (
	GetGameParamsXQueryValidationStrict GetGameParamsXQueryValidation = "strict"
)

Defines values for GetGameParamsXQueryValidation.

func (GetGameParamsXQueryValidation) Valid added in v0.4.0

Valid indicates whether the value is a known member of the GetGameParamsXQueryValidation enum.

type GetGameResponse added in v0.4.0

type GetGameResponse struct {
	Body         []byte
	HTTPResponse *http.Response
	// JSON200 the response for an HTTP 200 `application/json` response
	JSON200 *struct {
		// AsOf When this read assembled the catalog. Per-source vintage is on freshness.
		AsOf time.Time `json:"as_of"`

		// Data 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.
		Data   Game                             `json:"data"`
		Meta   ResponseMeta                     `json:"meta"`
		Object GetGame200JSONResponseBodyObject `json:"object"`
	}
	// JSON401 the response for an HTTP 401 `application/json` response
	JSON401 *ApiError
	// JSON402 the response for an HTTP 402 `application/json` response
	JSON402 *ApiError
	// JSON403 the response for an HTTP 403 `application/json` response
	JSON403 *ApiError
	// JSON404 the response for an HTTP 404 `application/json` response
	JSON404 *ApiError
	// JSON408 the response for an HTTP 408 `application/json` response
	JSON408 *ApiError
	// JSON423 the response for an HTTP 423 `application/json` response
	JSON423 *ApiError
	// JSON429 the response for an HTTP 429 `application/json` response
	JSON429 *ApiError
	// JSON500 the response for an HTTP 500 `application/json` response
	JSON500 *ApiError
	// JSON503 the response for an HTTP 503 `application/json` response
	JSON503 *ApiError
	// Headers200 the parsed response headers for an HTTP 200 response
	Headers200 *GetGameResponse200Headers
	// Headers304 the parsed response headers for an HTTP 304 response
	Headers304 *GetGameResponse304Headers
	// Headers429 the parsed response headers for an HTTP 429 response
	Headers429 *GetGameResponse429Headers
}

func ParseGetGameResponse added in v0.4.0

func ParseGetGameResponse(rsp *http.Response) (*GetGameResponse, error)

ParseGetGameResponse parses an HTTP response from a GetGameWithResponse call

func (GetGameResponse) ContentType added in v0.4.0

func (r GetGameResponse) ContentType() string

ContentType is a convenience method to retrieve the Content-Type value from the HTTP response headers

func (GetGameResponse) GetBody added in v0.4.0

func (r GetGameResponse) GetBody() []byte

GetBody returns the raw response body bytes

func (GetGameResponse) GetJSON200 added in v0.4.0

func (r GetGameResponse) GetJSON200() *struct {
	// AsOf When this read assembled the catalog. Per-source vintage is on freshness.
	AsOf time.Time `json:"as_of"`

	// Data 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.
	Data   Game                             `json:"data"`
	Meta   ResponseMeta                     `json:"meta"`
	Object GetGame200JSONResponseBodyObject `json:"object"`
}

GetJSON200 returns the response for an HTTP 200 `application/json` response

func (GetGameResponse) GetJSON401 added in v0.4.0

func (r GetGameResponse) GetJSON401() *ApiError

GetJSON401 returns the response for an HTTP 401 `application/json` response

func (GetGameResponse) GetJSON402 added in v0.4.0

func (r GetGameResponse) GetJSON402() *ApiError

GetJSON402 returns the response for an HTTP 402 `application/json` response

func (GetGameResponse) GetJSON403 added in v0.4.0

func (r GetGameResponse) GetJSON403() *ApiError

GetJSON403 returns the response for an HTTP 403 `application/json` response

func (GetGameResponse) GetJSON404 added in v0.4.0

func (r GetGameResponse) GetJSON404() *ApiError

GetJSON404 returns the response for an HTTP 404 `application/json` response

func (GetGameResponse) GetJSON408 added in v0.4.0

func (r GetGameResponse) GetJSON408() *ApiError

GetJSON408 returns the response for an HTTP 408 `application/json` response

func (GetGameResponse) GetJSON423 added in v0.4.0

func (r GetGameResponse) GetJSON423() *ApiError

GetJSON423 returns the response for an HTTP 423 `application/json` response

func (GetGameResponse) GetJSON429 added in v0.4.0

func (r GetGameResponse) GetJSON429() *ApiError

GetJSON429 returns the response for an HTTP 429 `application/json` response

func (GetGameResponse) GetJSON500 added in v0.4.0

func (r GetGameResponse) GetJSON500() *ApiError

GetJSON500 returns the response for an HTTP 500 `application/json` response

func (GetGameResponse) GetJSON503 added in v0.4.0

func (r GetGameResponse) GetJSON503() *ApiError

GetJSON503 returns the response for an HTTP 503 `application/json` response

func (GetGameResponse) Status added in v0.4.0

func (r GetGameResponse) Status() string

Status returns HTTPResponse.Status

func (GetGameResponse) StatusCode added in v0.4.0

func (r GetGameResponse) StatusCode() int

StatusCode returns HTTPResponse.StatusCode

type GetGameResponse200Headers added in v0.4.0

type GetGameResponse200Headers struct {
	ETag                *string
	RateLimitLimit      *int
	RateLimitRemaining  *int
	RateLimitReset      *int
	ServerTiming        *string
	XEffectiveQuery     *string
	XQueryIgnored       *string
	XRateLimitLimit     *int
	XRateLimitRemaining *int
	XRateLimitReset     *int
	XRequestId          *string
	XUsageAccounting    *string
}

GetGameResponse200Headers the declared response headers of an HTTP 200 response for GetGame

type GetGameResponse304Headers added in v0.4.0

type GetGameResponse304Headers struct {
	ETag                *string
	RateLimitLimit      *int
	RateLimitRemaining  *int
	RateLimitReset      *int
	ServerTiming        *string
	XEffectiveQuery     *string
	XQueryIgnored       *string
	XRateLimitLimit     *int
	XRateLimitRemaining *int
	XRateLimitReset     *int
	XRequestId          *string
	XUsageAccounting    *string
}

GetGameResponse304Headers the declared response headers of an HTTP 304 response for GetGame

type GetGameResponse429Headers added in v0.4.0

type GetGameResponse429Headers struct {
	RateLimitLimit      *int
	RateLimitRemaining  *int
	RateLimitReset      *int
	RetryAfter          *int
	XRateLimitLimit     *int
	XRateLimitRemaining *int
	XRateLimitReset     *int
	XRequestId          *string
}

GetGameResponse429Headers the declared response headers of an HTTP 429 response for GetGame

type GetHealth200JSONResponseBodyDataStatus

type GetHealth200JSONResponseBodyDataStatus string

GetHealth200JSONResponseBodyDataStatus defines parameters for GetHealth.

const (
	GetHealth200JSONResponseBodyDataStatusDegraded    GetHealth200JSONResponseBodyDataStatus = "degraded"
	GetHealth200JSONResponseBodyDataStatusDown        GetHealth200JSONResponseBodyDataStatus = "down"
	GetHealth200JSONResponseBodyDataStatusMaintenance GetHealth200JSONResponseBodyDataStatus = "maintenance"
	GetHealth200JSONResponseBodyDataStatusOk          GetHealth200JSONResponseBodyDataStatus = "ok"
)

Defines values for GetHealth200JSONResponseBodyDataStatus.

func (GetHealth200JSONResponseBodyDataStatus) Valid

Valid indicates whether the value is a known member of the GetHealth200JSONResponseBodyDataStatus enum.

type GetHealth200JSONResponseBodyDataSubsystemsBackgroundJobsStatus

type GetHealth200JSONResponseBodyDataSubsystemsBackgroundJobsStatus string

GetHealth200JSONResponseBodyDataSubsystemsBackgroundJobsStatus defines parameters for GetHealth.

const (
	GetHealth200JSONResponseBodyDataSubsystemsBackgroundJobsStatusDegraded   GetHealth200JSONResponseBodyDataSubsystemsBackgroundJobsStatus = "degraded"
	GetHealth200JSONResponseBodyDataSubsystemsBackgroundJobsStatusDown       GetHealth200JSONResponseBodyDataSubsystemsBackgroundJobsStatus = "down"
	GetHealth200JSONResponseBodyDataSubsystemsBackgroundJobsStatusNotChecked GetHealth200JSONResponseBodyDataSubsystemsBackgroundJobsStatus = "not_checked"
	GetHealth200JSONResponseBodyDataSubsystemsBackgroundJobsStatusOk         GetHealth200JSONResponseBodyDataSubsystemsBackgroundJobsStatus = "ok"
)

Defines values for GetHealth200JSONResponseBodyDataSubsystemsBackgroundJobsStatus.

func (GetHealth200JSONResponseBodyDataSubsystemsBackgroundJobsStatus) Valid

Valid indicates whether the value is a known member of the GetHealth200JSONResponseBodyDataSubsystemsBackgroundJobsStatus enum.

type GetHealth200JSONResponseBodyObject

type GetHealth200JSONResponseBodyObject string

GetHealth200JSONResponseBodyObject defines parameters for GetHealth.

const (
	Health GetHealth200JSONResponseBodyObject = "health"
)

Defines values for GetHealth200JSONResponseBodyObject.

func (GetHealth200JSONResponseBodyObject) Valid

Valid indicates whether the value is a known member of the GetHealth200JSONResponseBodyObject enum.

type GetHealthParams

type GetHealthParams struct {
	// XQueryValidation Opt into strict query-name validation. The default is compatible: unknown names are ignored and reported in X-Query-Ignored. With strict, an unknown name returns 400 bad_request with error.reason unknown_query_parameter before the handler runs, including when its percent escape is incomplete.
	XQueryValidation *GetHealthParamsXQueryValidation `json:"X-Query-Validation,omitempty"`

	// IfNoneMatch Conditional GET validator from a previous ETag. Matching values return 304 Not Modified with an empty body.
	IfNoneMatch *string `json:"If-None-Match,omitempty"`
}

GetHealthParams defines parameters for GetHealth.

type GetHealthParamsXQueryValidation added in v0.3.0

type GetHealthParamsXQueryValidation string

GetHealthParamsXQueryValidation defines parameters for GetHealth.

const (
	GetHealthParamsXQueryValidationStrict GetHealthParamsXQueryValidation = "strict"
)

Defines values for GetHealthParamsXQueryValidation.

func (GetHealthParamsXQueryValidation) Valid added in v0.3.0

Valid indicates whether the value is a known member of the GetHealthParamsXQueryValidation enum.

type GetHealthResponse

type GetHealthResponse struct {
	Body         []byte
	HTTPResponse *http.Response
	// JSON200 the response for an HTTP 200 `application/json` response
	JSON200 *struct {
		Data struct {
			Cache      *bool                                   `json:"cache,omitempty"`
			Db         *bool                                   `json:"db,omitempty"`
			Status     *GetHealth200JSONResponseBodyDataStatus `json:"status,omitempty"`
			Subsystems *struct {
				// BackgroundJobs Public-safe aggregate status for expected background job successful-completion heartbeats. Does not expose Redis keys, job names, raw errors, provider payloads, wallet addresses, or condition IDs.
				BackgroundJobs struct {
					Checked bool `json:"checked"`
					Healthy int  `json:"healthy"`
					Invalid int  `json:"invalid"`
					Missing int  `json:"missing"`

					// Paused Heavy-periodic jobs that are stale/missing/invalid while the heavy executor is disabled (heavy_pipeline_control.executor_mode != 'active'), so this binary does not dispatch them. Observable but expected; they never drive status to 'down' (paused > 0 yields 'degraded').
					Paused       int                                                            `json:"paused"`
					Stale        int                                                            `json:"stale"`
					Status       GetHealth200JSONResponseBodyDataSubsystemsBackgroundJobsStatus `json:"status"`
					Total        int                                                            `json:"total"`
					Unconfigured int                                                            `json:"unconfigured"`
				} `json:"background_jobs"`

				// WebhookCompatibility Whether the webhook outbox schema validated on this probe. false lowers status to degraded. true during a maintenance window, when nothing is probed.
				WebhookCompatibility bool `json:"webhook_compatibility"`
			} `json:"subsystems,omitempty"`
		} `json:"data"`
		Meta   ResponseMeta                       `json:"meta"`
		Object GetHealth200JSONResponseBodyObject `json:"object"`
	}
	// JSON408 the response for an HTTP 408 `application/json` response
	JSON408 *ApiError
	// JSON429 the response for an HTTP 429 `application/json` response
	JSON429 *ApiError
	// JSON500 the response for an HTTP 500 `application/json` response
	JSON500 *ApiError
	// Headers200 the parsed response headers for an HTTP 200 response
	Headers200 *GetHealthResponse200Headers
	// Headers304 the parsed response headers for an HTTP 304 response
	Headers304 *GetHealthResponse304Headers
	// Headers429 the parsed response headers for an HTTP 429 response
	Headers429 *GetHealthResponse429Headers
}

func ParseGetHealthResponse

func ParseGetHealthResponse(rsp *http.Response) (*GetHealthResponse, error)

ParseGetHealthResponse parses an HTTP response from a GetHealthWithResponse call

func (GetHealthResponse) ContentType

func (r GetHealthResponse) ContentType() string

ContentType is a convenience method to retrieve the Content-Type value from the HTTP response headers

func (GetHealthResponse) GetBody

func (r GetHealthResponse) GetBody() []byte

GetBody returns the raw response body bytes

func (GetHealthResponse) GetJSON200

func (r GetHealthResponse) GetJSON200() *struct {
	Data struct {
		Cache      *bool                                   `json:"cache,omitempty"`
		Db         *bool                                   `json:"db,omitempty"`
		Status     *GetHealth200JSONResponseBodyDataStatus `json:"status,omitempty"`
		Subsystems *struct {
			// BackgroundJobs Public-safe aggregate status for expected background job successful-completion heartbeats. Does not expose Redis keys, job names, raw errors, provider payloads, wallet addresses, or condition IDs.
			BackgroundJobs struct {
				Checked bool `json:"checked"`
				Healthy int  `json:"healthy"`
				Invalid int  `json:"invalid"`
				Missing int  `json:"missing"`

				// Paused Heavy-periodic jobs that are stale/missing/invalid while the heavy executor is disabled (heavy_pipeline_control.executor_mode != 'active'), so this binary does not dispatch them. Observable but expected; they never drive status to 'down' (paused > 0 yields 'degraded').
				Paused       int                                                            `json:"paused"`
				Stale        int                                                            `json:"stale"`
				Status       GetHealth200JSONResponseBodyDataSubsystemsBackgroundJobsStatus `json:"status"`
				Total        int                                                            `json:"total"`
				Unconfigured int                                                            `json:"unconfigured"`
			} `json:"background_jobs"`

			// WebhookCompatibility Whether the webhook outbox schema validated on this probe. false lowers status to degraded. true during a maintenance window, when nothing is probed.
			WebhookCompatibility bool `json:"webhook_compatibility"`
		} `json:"subsystems,omitempty"`
	} `json:"data"`
	Meta   ResponseMeta                       `json:"meta"`
	Object GetHealth200JSONResponseBodyObject `json:"object"`
}

GetJSON200 returns the response for an HTTP 200 `application/json` response

func (GetHealthResponse) GetJSON408 added in v0.2.0

func (r GetHealthResponse) GetJSON408() *ApiError

GetJSON408 returns the response for an HTTP 408 `application/json` response

func (GetHealthResponse) GetJSON429

func (r GetHealthResponse) GetJSON429() *ApiError

GetJSON429 returns the response for an HTTP 429 `application/json` response

func (GetHealthResponse) GetJSON500 added in v0.4.0

func (r GetHealthResponse) GetJSON500() *ApiError

GetJSON500 returns the response for an HTTP 500 `application/json` response

func (GetHealthResponse) Status

func (r GetHealthResponse) Status() string

Status returns HTTPResponse.Status

func (GetHealthResponse) StatusCode

func (r GetHealthResponse) StatusCode() int

StatusCode returns HTTPResponse.StatusCode

type GetHealthResponse200Headers

type GetHealthResponse200Headers struct {
	ETag                *string
	RateLimitLimit      *int
	RateLimitRemaining  *int
	RateLimitReset      *int
	ServerTiming        *string
	XEffectiveQuery     *string
	XQueryIgnored       *string
	XRateLimitLimit     *int
	XRateLimitRemaining *int
	XRateLimitReset     *int
}

GetHealthResponse200Headers the declared response headers of an HTTP 200 response for GetHealth

type GetHealthResponse304Headers

type GetHealthResponse304Headers struct {
	ETag                *string
	RateLimitLimit      *int
	RateLimitRemaining  *int
	RateLimitReset      *int
	ServerTiming        *string
	XEffectiveQuery     *string
	XQueryIgnored       *string
	XRateLimitLimit     *int
	XRateLimitRemaining *int
	XRateLimitReset     *int
}

GetHealthResponse304Headers the declared response headers of an HTTP 304 response for GetHealth

type GetHealthResponse429Headers

type GetHealthResponse429Headers struct {
	RateLimitLimit      *int
	RateLimitRemaining  *int
	RateLimitReset      *int
	RetryAfter          *int
	XRateLimitLimit     *int
	XRateLimitRemaining *int
	XRateLimitReset     *int
	XRequestId          *string
}

GetHealthResponse429Headers the declared response headers of an HTTP 429 response for GetHealth

type GetInsiderRadarFlag200JSONResponseBodyObject

type GetInsiderRadarFlag200JSONResponseBodyObject string

GetInsiderRadarFlag200JSONResponseBodyObject defines parameters for GetInsiderRadarFlag.

const (
	RadarFlag GetInsiderRadarFlag200JSONResponseBodyObject = "radar_flag"
)

Defines values for GetInsiderRadarFlag200JSONResponseBodyObject.

func (GetInsiderRadarFlag200JSONResponseBodyObject) Valid

Valid indicates whether the value is a known member of the GetInsiderRadarFlag200JSONResponseBodyObject enum.

type GetInsiderRadarFlagParams

type GetInsiderRadarFlagParams struct {
	// XQueryValidation Opt into strict query-name validation. The default is compatible: unknown names are ignored and reported in X-Query-Ignored. With strict, an unknown name returns 400 bad_request with error.reason unknown_query_parameter before the handler runs, including when its percent escape is incomplete.
	XQueryValidation *GetInsiderRadarFlagParamsXQueryValidation `json:"X-Query-Validation,omitempty"`

	// IfNoneMatch Conditional GET validator from a previous ETag. Matching values return 304 Not Modified with an empty body.
	IfNoneMatch *string `json:"If-None-Match,omitempty"`
}

GetInsiderRadarFlagParams defines parameters for GetInsiderRadarFlag.

type GetInsiderRadarFlagParamsXQueryValidation added in v0.3.0

type GetInsiderRadarFlagParamsXQueryValidation string

GetInsiderRadarFlagParamsXQueryValidation defines parameters for GetInsiderRadarFlag.

const (
	GetInsiderRadarFlagParamsXQueryValidationStrict GetInsiderRadarFlagParamsXQueryValidation = "strict"
)

Defines values for GetInsiderRadarFlagParamsXQueryValidation.

func (GetInsiderRadarFlagParamsXQueryValidation) Valid added in v0.3.0

Valid indicates whether the value is a known member of the GetInsiderRadarFlagParamsXQueryValidation enum.

type GetInsiderRadarFlagResponse

type GetInsiderRadarFlagResponse struct {
	Body         []byte
	HTTPResponse *http.Response
	// JSON200 the response for an HTTP 200 `application/json` response
	JSON200 *struct {
		Data   SuspiciousTrade                              `json:"data"`
		Meta   ResponseMeta                                 `json:"meta"`
		Object GetInsiderRadarFlag200JSONResponseBodyObject `json:"object"`
	}
	// JSON400 the response for an HTTP 400 `application/json` response
	JSON400 *ApiError
	// JSON401 the response for an HTTP 401 `application/json` response
	JSON401 *ApiError
	// JSON402 the response for an HTTP 402 `application/json` response
	JSON402 *ApiError
	// JSON403 the response for an HTTP 403 `application/json` response
	JSON403 *ApiError
	// JSON404 the response for an HTTP 404 `application/json` response
	JSON404 *ApiError
	// JSON408 the response for an HTTP 408 `application/json` response
	JSON408 *ApiError
	// JSON423 the response for an HTTP 423 `application/json` response
	JSON423 *ApiError
	// JSON429 the response for an HTTP 429 `application/json` response
	JSON429 *ApiError
	// JSON500 the response for an HTTP 500 `application/json` response
	JSON500 *ApiError
	// JSON503 the response for an HTTP 503 `application/json` response
	JSON503 *ApiError
	// Headers200 the parsed response headers for an HTTP 200 response
	Headers200 *GetInsiderRadarFlagResponse200Headers
	// Headers304 the parsed response headers for an HTTP 304 response
	Headers304 *GetInsiderRadarFlagResponse304Headers
	// Headers429 the parsed response headers for an HTTP 429 response
	Headers429 *GetInsiderRadarFlagResponse429Headers
	// Headers503 the parsed response headers for an HTTP 503 response
	Headers503 *GetInsiderRadarFlagResponse503Headers
}

func ParseGetInsiderRadarFlagResponse

func ParseGetInsiderRadarFlagResponse(rsp *http.Response) (*GetInsiderRadarFlagResponse, error)

ParseGetInsiderRadarFlagResponse parses an HTTP response from a GetInsiderRadarFlagWithResponse call

func (GetInsiderRadarFlagResponse) ContentType

func (r GetInsiderRadarFlagResponse) ContentType() string

ContentType is a convenience method to retrieve the Content-Type value from the HTTP response headers

func (GetInsiderRadarFlagResponse) GetBody

func (r GetInsiderRadarFlagResponse) GetBody() []byte

GetBody returns the raw response body bytes

func (GetInsiderRadarFlagResponse) GetJSON200

func (r GetInsiderRadarFlagResponse) GetJSON200() *struct {
	Data   SuspiciousTrade                              `json:"data"`
	Meta   ResponseMeta                                 `json:"meta"`
	Object GetInsiderRadarFlag200JSONResponseBodyObject `json:"object"`
}

GetJSON200 returns the response for an HTTP 200 `application/json` response

func (GetInsiderRadarFlagResponse) GetJSON400

func (r GetInsiderRadarFlagResponse) GetJSON400() *ApiError

GetJSON400 returns the response for an HTTP 400 `application/json` response

func (GetInsiderRadarFlagResponse) GetJSON401

func (r GetInsiderRadarFlagResponse) GetJSON401() *ApiError

GetJSON401 returns the response for an HTTP 401 `application/json` response

func (GetInsiderRadarFlagResponse) GetJSON402

func (r GetInsiderRadarFlagResponse) GetJSON402() *ApiError

GetJSON402 returns the response for an HTTP 402 `application/json` response

func (GetInsiderRadarFlagResponse) GetJSON403

func (r GetInsiderRadarFlagResponse) GetJSON403() *ApiError

GetJSON403 returns the response for an HTTP 403 `application/json` response

func (GetInsiderRadarFlagResponse) GetJSON404

func (r GetInsiderRadarFlagResponse) GetJSON404() *ApiError

GetJSON404 returns the response for an HTTP 404 `application/json` response

func (GetInsiderRadarFlagResponse) GetJSON408 added in v0.2.0

func (r GetInsiderRadarFlagResponse) GetJSON408() *ApiError

GetJSON408 returns the response for an HTTP 408 `application/json` response

func (GetInsiderRadarFlagResponse) GetJSON423

func (r GetInsiderRadarFlagResponse) GetJSON423() *ApiError

GetJSON423 returns the response for an HTTP 423 `application/json` response

func (GetInsiderRadarFlagResponse) GetJSON429

func (r GetInsiderRadarFlagResponse) GetJSON429() *ApiError

GetJSON429 returns the response for an HTTP 429 `application/json` response

func (GetInsiderRadarFlagResponse) GetJSON500 added in v0.4.0

func (r GetInsiderRadarFlagResponse) GetJSON500() *ApiError

GetJSON500 returns the response for an HTTP 500 `application/json` response

func (GetInsiderRadarFlagResponse) GetJSON503

func (r GetInsiderRadarFlagResponse) GetJSON503() *ApiError

GetJSON503 returns the response for an HTTP 503 `application/json` response

func (GetInsiderRadarFlagResponse) Status

Status returns HTTPResponse.Status

func (GetInsiderRadarFlagResponse) StatusCode

func (r GetInsiderRadarFlagResponse) StatusCode() int

StatusCode returns HTTPResponse.StatusCode

type GetInsiderRadarFlagResponse200Headers

type GetInsiderRadarFlagResponse200Headers struct {
	ETag                *string
	RateLimitLimit      *int
	RateLimitRemaining  *int
	RateLimitReset      *int
	ServerTiming        *string
	XEffectiveQuery     *string
	XQueryIgnored       *string
	XRateLimitLimit     *int
	XRateLimitRemaining *int
	XRateLimitReset     *int
	XRequestId          *string
	XUsageAccounting    *string
}

GetInsiderRadarFlagResponse200Headers the declared response headers of an HTTP 200 response for GetInsiderRadarFlag

type GetInsiderRadarFlagResponse304Headers

type GetInsiderRadarFlagResponse304Headers struct {
	ETag                *string
	RateLimitLimit      *int
	RateLimitRemaining  *int
	RateLimitReset      *int
	ServerTiming        *string
	XEffectiveQuery     *string
	XQueryIgnored       *string
	XRateLimitLimit     *int
	XRateLimitRemaining *int
	XRateLimitReset     *int
	XRequestId          *string
	XUsageAccounting    *string
}

GetInsiderRadarFlagResponse304Headers the declared response headers of an HTTP 304 response for GetInsiderRadarFlag

type GetInsiderRadarFlagResponse429Headers

type GetInsiderRadarFlagResponse429Headers struct {
	RateLimitLimit      *int
	RateLimitRemaining  *int
	RateLimitReset      *int
	RetryAfter          *int
	XRateLimitLimit     *int
	XRateLimitRemaining *int
	XRateLimitReset     *int
	XRequestId          *string
}

GetInsiderRadarFlagResponse429Headers the declared response headers of an HTTP 429 response for GetInsiderRadarFlag

type GetInsiderRadarFlagResponse503Headers

type GetInsiderRadarFlagResponse503Headers struct {
	RetryAfter *int
	XRequestId *string
}

GetInsiderRadarFlagResponse503Headers the declared response headers of an HTTP 503 response for GetInsiderRadarFlag

type GetLargeTrade200JSONResponseBodyObject added in v0.4.0

type GetLargeTrade200JSONResponseBodyObject string

GetLargeTrade200JSONResponseBodyObject defines parameters for GetLargeTrade.

const (
	GetLargeTrade200JSONResponseBodyObjectLargeTrade GetLargeTrade200JSONResponseBodyObject = "large_trade"
)

Defines values for GetLargeTrade200JSONResponseBodyObject.

func (GetLargeTrade200JSONResponseBodyObject) Valid added in v0.4.0

Valid indicates whether the value is a known member of the GetLargeTrade200JSONResponseBodyObject enum.

type GetLargeTradeParams added in v0.4.0

type GetLargeTradeParams struct {
	// XQueryValidation Opt into strict query-name validation. The default is compatible: unknown names are ignored and reported in X-Query-Ignored. With strict, an unknown name returns 400 bad_request with error.reason unknown_query_parameter before the handler runs, including when its percent escape is incomplete.
	XQueryValidation *GetLargeTradeParamsXQueryValidation `json:"X-Query-Validation,omitempty"`

	// IfNoneMatch Conditional GET validator from a previous ETag. Matching values return 304 Not Modified with an empty body.
	IfNoneMatch *string `json:"If-None-Match,omitempty"`
}

GetLargeTradeParams defines parameters for GetLargeTrade.

type GetLargeTradeParamsXQueryValidation added in v0.4.0

type GetLargeTradeParamsXQueryValidation string

GetLargeTradeParamsXQueryValidation defines parameters for GetLargeTrade.

const (
	GetLargeTradeParamsXQueryValidationStrict GetLargeTradeParamsXQueryValidation = "strict"
)

Defines values for GetLargeTradeParamsXQueryValidation.

func (GetLargeTradeParamsXQueryValidation) Valid added in v0.4.0

Valid indicates whether the value is a known member of the GetLargeTradeParamsXQueryValidation enum.

type GetLargeTradeResponse added in v0.4.0

type GetLargeTradeResponse struct {
	Body         []byte
	HTTPResponse *http.Response
	// JSON200 the response for an HTTP 200 `application/json` response
	JSON200 *struct {
		Data   LargeTradeDetail                       `json:"data"`
		Meta   ResponseMeta                           `json:"meta"`
		Object GetLargeTrade200JSONResponseBodyObject `json:"object"`
	}
	// JSON400 the response for an HTTP 400 `application/json` response
	JSON400 *ApiError
	// JSON401 the response for an HTTP 401 `application/json` response
	JSON401 *ApiError
	// JSON402 the response for an HTTP 402 `application/json` response
	JSON402 *ApiError
	// JSON403 the response for an HTTP 403 `application/json` response
	JSON403 *ApiError
	// JSON404 the response for an HTTP 404 `application/json` response
	JSON404 *ApiError
	// JSON408 the response for an HTTP 408 `application/json` response
	JSON408 *ApiError
	// JSON423 the response for an HTTP 423 `application/json` response
	JSON423 *ApiError
	// JSON429 the response for an HTTP 429 `application/json` response
	JSON429 *ApiError
	// JSON500 the response for an HTTP 500 `application/json` response
	JSON500 *ApiError
	// JSON503 the response for an HTTP 503 `application/json` response
	JSON503 *ApiError
	// Headers200 the parsed response headers for an HTTP 200 response
	Headers200 *GetLargeTradeResponse200Headers
	// Headers304 the parsed response headers for an HTTP 304 response
	Headers304 *GetLargeTradeResponse304Headers
	// Headers429 the parsed response headers for an HTTP 429 response
	Headers429 *GetLargeTradeResponse429Headers
	// Headers503 the parsed response headers for an HTTP 503 response
	Headers503 *GetLargeTradeResponse503Headers
}

func ParseGetLargeTradeResponse added in v0.4.0

func ParseGetLargeTradeResponse(rsp *http.Response) (*GetLargeTradeResponse, error)

ParseGetLargeTradeResponse parses an HTTP response from a GetLargeTradeWithResponse call

func (GetLargeTradeResponse) ContentType added in v0.4.0

func (r GetLargeTradeResponse) ContentType() string

ContentType is a convenience method to retrieve the Content-Type value from the HTTP response headers

func (GetLargeTradeResponse) GetBody added in v0.4.0

func (r GetLargeTradeResponse) GetBody() []byte

GetBody returns the raw response body bytes

func (GetLargeTradeResponse) GetJSON200 added in v0.4.0

func (r GetLargeTradeResponse) GetJSON200() *struct {
	Data   LargeTradeDetail                       `json:"data"`
	Meta   ResponseMeta                           `json:"meta"`
	Object GetLargeTrade200JSONResponseBodyObject `json:"object"`
}

GetJSON200 returns the response for an HTTP 200 `application/json` response

func (GetLargeTradeResponse) GetJSON400 added in v0.4.0

func (r GetLargeTradeResponse) GetJSON400() *ApiError

GetJSON400 returns the response for an HTTP 400 `application/json` response

func (GetLargeTradeResponse) GetJSON401 added in v0.4.0

func (r GetLargeTradeResponse) GetJSON401() *ApiError

GetJSON401 returns the response for an HTTP 401 `application/json` response

func (GetLargeTradeResponse) GetJSON402 added in v0.4.0

func (r GetLargeTradeResponse) GetJSON402() *ApiError

GetJSON402 returns the response for an HTTP 402 `application/json` response

func (GetLargeTradeResponse) GetJSON403 added in v0.4.0

func (r GetLargeTradeResponse) GetJSON403() *ApiError

GetJSON403 returns the response for an HTTP 403 `application/json` response

func (GetLargeTradeResponse) GetJSON404 added in v0.4.0

func (r GetLargeTradeResponse) GetJSON404() *ApiError

GetJSON404 returns the response for an HTTP 404 `application/json` response

func (GetLargeTradeResponse) GetJSON408 added in v0.4.0

func (r GetLargeTradeResponse) GetJSON408() *ApiError

GetJSON408 returns the response for an HTTP 408 `application/json` response

func (GetLargeTradeResponse) GetJSON423 added in v0.4.0

func (r GetLargeTradeResponse) GetJSON423() *ApiError

GetJSON423 returns the response for an HTTP 423 `application/json` response

func (GetLargeTradeResponse) GetJSON429 added in v0.4.0

func (r GetLargeTradeResponse) GetJSON429() *ApiError

GetJSON429 returns the response for an HTTP 429 `application/json` response

func (GetLargeTradeResponse) GetJSON500 added in v0.4.0

func (r GetLargeTradeResponse) GetJSON500() *ApiError

GetJSON500 returns the response for an HTTP 500 `application/json` response

func (GetLargeTradeResponse) GetJSON503 added in v0.4.0

func (r GetLargeTradeResponse) GetJSON503() *ApiError

GetJSON503 returns the response for an HTTP 503 `application/json` response

func (GetLargeTradeResponse) Status added in v0.4.0

func (r GetLargeTradeResponse) Status() string

Status returns HTTPResponse.Status

func (GetLargeTradeResponse) StatusCode added in v0.4.0

func (r GetLargeTradeResponse) StatusCode() int

StatusCode returns HTTPResponse.StatusCode

type GetLargeTradeResponse200Headers added in v0.4.0

type GetLargeTradeResponse200Headers struct {
	ETag                *string
	RateLimitLimit      *int
	RateLimitRemaining  *int
	RateLimitReset      *int
	ServerTiming        *string
	XEffectiveQuery     *string
	XQueryIgnored       *string
	XRateLimitLimit     *int
	XRateLimitRemaining *int
	XRateLimitReset     *int
	XRequestId          *string
	XUsageAccounting    *string
}

GetLargeTradeResponse200Headers the declared response headers of an HTTP 200 response for GetLargeTrade

type GetLargeTradeResponse304Headers added in v0.4.0

type GetLargeTradeResponse304Headers struct {
	ETag                *string
	RateLimitLimit      *int
	RateLimitRemaining  *int
	RateLimitReset      *int
	ServerTiming        *string
	XEffectiveQuery     *string
	XQueryIgnored       *string
	XRateLimitLimit     *int
	XRateLimitRemaining *int
	XRateLimitReset     *int
	XRequestId          *string
	XUsageAccounting    *string
}

GetLargeTradeResponse304Headers the declared response headers of an HTTP 304 response for GetLargeTrade

type GetLargeTradeResponse429Headers added in v0.4.0

type GetLargeTradeResponse429Headers struct {
	RateLimitLimit      *int
	RateLimitRemaining  *int
	RateLimitReset      *int
	RetryAfter          *int
	XRateLimitLimit     *int
	XRateLimitRemaining *int
	XRateLimitReset     *int
	XRequestId          *string
}

GetLargeTradeResponse429Headers the declared response headers of an HTTP 429 response for GetLargeTrade

type GetLargeTradeResponse503Headers added in v0.4.0

type GetLargeTradeResponse503Headers struct {
	RetryAfter *int
	XRequestId *string
}

GetLargeTradeResponse503Headers the declared response headers of an HTTP 503 response for GetLargeTrade

type GetMarketCandles200JSONResponseBodyObject

type GetMarketCandles200JSONResponseBodyObject string

GetMarketCandles200JSONResponseBodyObject defines parameters for GetMarketCandles.

const (
	GetMarketCandles200JSONResponseBodyObjectMarketCandles GetMarketCandles200JSONResponseBodyObject = "market_candles"
)

Defines values for GetMarketCandles200JSONResponseBodyObject.

func (GetMarketCandles200JSONResponseBodyObject) Valid

Valid indicates whether the value is a known member of the GetMarketCandles200JSONResponseBodyObject enum.

type GetMarketCandlesParams

type GetMarketCandlesParams struct {
	// Resolution Bucketing granularity. 1d aggregates by UTC calendar day, 1w by ISO week (Monday 00:00 UTC start). Defaults to 1d.
	Resolution *GetMarketCandlesParamsResolution `form:"resolution,omitempty" json:"resolution,omitempty"`

	// From Exclusive lower bound as a URL-decoded unix timestamp in seconds; points at or before this timestamp are omitted (the underlying daily snapshot read filters bucket_start > from). If to is also present, from must be less than or equal to to. Note: for resolution=1w a surviving mid-week point can yield a weekly candle whose t (Monday 00:00 UTC) precedes from.
	From *int64 `form:"from,omitempty" json:"from,omitempty"`

	// To Inclusive upper bound as a URL-decoded unix timestamp in seconds; points after this timestamp are omitted. If from is also present, from must be less than or equal to to.
	To *int64 `form:"to,omitempty" json:"to,omitempty"`

	// XQueryValidation Opt into strict query-name validation. The default is compatible: unknown names are ignored and reported in X-Query-Ignored. With strict, an unknown name returns 400 bad_request with error.reason unknown_query_parameter before the handler runs, including when its percent escape is incomplete.
	XQueryValidation *GetMarketCandlesParamsXQueryValidation `json:"X-Query-Validation,omitempty"`

	// IfNoneMatch Conditional GET validator from a previous ETag. Matching values return 304 Not Modified with an empty body.
	IfNoneMatch *string `json:"If-None-Match,omitempty"`
}

GetMarketCandlesParams defines parameters for GetMarketCandles.

type GetMarketCandlesParamsResolution

type GetMarketCandlesParamsResolution string

GetMarketCandlesParamsResolution defines parameters for GetMarketCandles.

const (
	GetMarketCandlesParamsResolutionN1d GetMarketCandlesParamsResolution = "1d"
	GetMarketCandlesParamsResolutionN1w GetMarketCandlesParamsResolution = "1w"
)

Defines values for GetMarketCandlesParamsResolution.

func (GetMarketCandlesParamsResolution) Valid

Valid indicates whether the value is a known member of the GetMarketCandlesParamsResolution enum.

type GetMarketCandlesParamsXQueryValidation added in v0.3.0

type GetMarketCandlesParamsXQueryValidation string

GetMarketCandlesParamsXQueryValidation defines parameters for GetMarketCandles.

const (
	GetMarketCandlesParamsXQueryValidationStrict GetMarketCandlesParamsXQueryValidation = "strict"
)

Defines values for GetMarketCandlesParamsXQueryValidation.

func (GetMarketCandlesParamsXQueryValidation) Valid added in v0.3.0

Valid indicates whether the value is a known member of the GetMarketCandlesParamsXQueryValidation enum.

type GetMarketCandlesResponse

type GetMarketCandlesResponse struct {
	Body         []byte
	HTTPResponse *http.Response
	// JSON200 the response for an HTTP 200 `application/json` response
	JSON200 *struct {
		// Data 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).
		Data   MarketCandles                             `json:"data"`
		Meta   ResponseMeta                              `json:"meta"`
		Object GetMarketCandles200JSONResponseBodyObject `json:"object"`
	}
	// JSON400 the response for an HTTP 400 `application/json` response
	JSON400 *ApiError
	// JSON401 the response for an HTTP 401 `application/json` response
	JSON401 *ApiError
	// JSON402 the response for an HTTP 402 `application/json` response
	JSON402 *ApiError
	// JSON403 the response for an HTTP 403 `application/json` response
	JSON403 *ApiError
	// JSON404 the response for an HTTP 404 `application/json` response
	JSON404 *ApiError
	// JSON408 the response for an HTTP 408 `application/json` response
	JSON408 *ApiError
	// JSON423 the response for an HTTP 423 `application/json` response
	JSON423 *ApiError
	// JSON429 the response for an HTTP 429 `application/json` response
	JSON429 *ApiError
	// JSON500 the response for an HTTP 500 `application/json` response
	JSON500 *ApiError
	// JSON503 the response for an HTTP 503 `application/json` response
	JSON503 *ApiError
	// Headers200 the parsed response headers for an HTTP 200 response
	Headers200 *GetMarketCandlesResponse200Headers
	// Headers304 the parsed response headers for an HTTP 304 response
	Headers304 *GetMarketCandlesResponse304Headers
	// Headers429 the parsed response headers for an HTTP 429 response
	Headers429 *GetMarketCandlesResponse429Headers
	// Headers503 the parsed response headers for an HTTP 503 response
	Headers503 *GetMarketCandlesResponse503Headers
}

func ParseGetMarketCandlesResponse

func ParseGetMarketCandlesResponse(rsp *http.Response) (*GetMarketCandlesResponse, error)

ParseGetMarketCandlesResponse parses an HTTP response from a GetMarketCandlesWithResponse call

func (GetMarketCandlesResponse) ContentType

func (r GetMarketCandlesResponse) ContentType() string

ContentType is a convenience method to retrieve the Content-Type value from the HTTP response headers

func (GetMarketCandlesResponse) GetBody

func (r GetMarketCandlesResponse) GetBody() []byte

GetBody returns the raw response body bytes

func (GetMarketCandlesResponse) GetJSON200

func (r GetMarketCandlesResponse) GetJSON200() *struct {
	// Data 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).
	Data   MarketCandles                             `json:"data"`
	Meta   ResponseMeta                              `json:"meta"`
	Object GetMarketCandles200JSONResponseBodyObject `json:"object"`
}

GetJSON200 returns the response for an HTTP 200 `application/json` response

func (GetMarketCandlesResponse) GetJSON400

func (r GetMarketCandlesResponse) GetJSON400() *ApiError

GetJSON400 returns the response for an HTTP 400 `application/json` response

func (GetMarketCandlesResponse) GetJSON401

func (r GetMarketCandlesResponse) GetJSON401() *ApiError

GetJSON401 returns the response for an HTTP 401 `application/json` response

func (GetMarketCandlesResponse) GetJSON402

func (r GetMarketCandlesResponse) GetJSON402() *ApiError

GetJSON402 returns the response for an HTTP 402 `application/json` response

func (GetMarketCandlesResponse) GetJSON403

func (r GetMarketCandlesResponse) GetJSON403() *ApiError

GetJSON403 returns the response for an HTTP 403 `application/json` response

func (GetMarketCandlesResponse) GetJSON404

func (r GetMarketCandlesResponse) GetJSON404() *ApiError

GetJSON404 returns the response for an HTTP 404 `application/json` response

func (GetMarketCandlesResponse) GetJSON408 added in v0.2.0

func (r GetMarketCandlesResponse) GetJSON408() *ApiError

GetJSON408 returns the response for an HTTP 408 `application/json` response

func (GetMarketCandlesResponse) GetJSON423

func (r GetMarketCandlesResponse) GetJSON423() *ApiError

GetJSON423 returns the response for an HTTP 423 `application/json` response

func (GetMarketCandlesResponse) GetJSON429

func (r GetMarketCandlesResponse) GetJSON429() *ApiError

GetJSON429 returns the response for an HTTP 429 `application/json` response

func (GetMarketCandlesResponse) GetJSON500 added in v0.4.0

func (r GetMarketCandlesResponse) GetJSON500() *ApiError

GetJSON500 returns the response for an HTTP 500 `application/json` response

func (GetMarketCandlesResponse) GetJSON503

func (r GetMarketCandlesResponse) GetJSON503() *ApiError

GetJSON503 returns the response for an HTTP 503 `application/json` response

func (GetMarketCandlesResponse) Status

func (r GetMarketCandlesResponse) Status() string

Status returns HTTPResponse.Status

func (GetMarketCandlesResponse) StatusCode

func (r GetMarketCandlesResponse) StatusCode() int

StatusCode returns HTTPResponse.StatusCode

type GetMarketCandlesResponse200Headers

type GetMarketCandlesResponse200Headers struct {
	ETag                *string
	RateLimitLimit      *int
	RateLimitRemaining  *int
	RateLimitReset      *int
	ServerTiming        *string
	XEffectiveQuery     *string
	XQueryIgnored       *string
	XRateLimitLimit     *int
	XRateLimitRemaining *int
	XRateLimitReset     *int
	XRequestId          *string
	XUsageAccounting    *string
}

GetMarketCandlesResponse200Headers the declared response headers of an HTTP 200 response for GetMarketCandles

type GetMarketCandlesResponse304Headers

type GetMarketCandlesResponse304Headers struct {
	ETag                *string
	RateLimitLimit      *int
	RateLimitRemaining  *int
	RateLimitReset      *int
	ServerTiming        *string
	XEffectiveQuery     *string
	XQueryIgnored       *string
	XRateLimitLimit     *int
	XRateLimitRemaining *int
	XRateLimitReset     *int
	XRequestId          *string
	XUsageAccounting    *string
}

GetMarketCandlesResponse304Headers the declared response headers of an HTTP 304 response for GetMarketCandles

type GetMarketCandlesResponse429Headers

type GetMarketCandlesResponse429Headers struct {
	RateLimitLimit      *int
	RateLimitRemaining  *int
	RateLimitReset      *int
	RetryAfter          *int
	XRateLimitLimit     *int
	XRateLimitRemaining *int
	XRateLimitReset     *int
	XRequestId          *string
}

GetMarketCandlesResponse429Headers the declared response headers of an HTTP 429 response for GetMarketCandles

type GetMarketCandlesResponse503Headers

type GetMarketCandlesResponse503Headers struct {
	RetryAfter *int
	XRequestId *string
}

GetMarketCandlesResponse503Headers the declared response headers of an HTTP 503 response for GetMarketCandles

type GetMarketContextMarkdownParams added in v0.3.0

type GetMarketContextMarkdownParams struct {
	// XQueryValidation Opt into strict query-name validation. The default is compatible: unknown names are ignored and reported in X-Query-Ignored. With strict, an unknown name returns 400 bad_request with error.reason unknown_query_parameter before the handler runs, including when its percent escape is incomplete.
	XQueryValidation *GetMarketContextMarkdownParamsXQueryValidation `json:"X-Query-Validation,omitempty"`
}

GetMarketContextMarkdownParams defines parameters for GetMarketContextMarkdown.

type GetMarketContextMarkdownParamsXQueryValidation added in v0.3.0

type GetMarketContextMarkdownParamsXQueryValidation string

GetMarketContextMarkdownParamsXQueryValidation defines parameters for GetMarketContextMarkdown.

const (
	GetMarketContextMarkdownParamsXQueryValidationStrict GetMarketContextMarkdownParamsXQueryValidation = "strict"
)

Defines values for GetMarketContextMarkdownParamsXQueryValidation.

func (GetMarketContextMarkdownParamsXQueryValidation) Valid added in v0.3.0

Valid indicates whether the value is a known member of the GetMarketContextMarkdownParamsXQueryValidation enum.

type GetMarketContextMarkdownResponse added in v0.2.0

type GetMarketContextMarkdownResponse struct {
	Body         []byte
	HTTPResponse *http.Response
	// JSON400 the response for an HTTP 400 `application/json` response
	JSON400 *ApiError
	// JSON401 the response for an HTTP 401 `application/json` response
	JSON401 *ApiError
	// JSON402 the response for an HTTP 402 `application/json` response
	JSON402 *ApiError
	// JSON403 the response for an HTTP 403 `application/json` response
	JSON403 *ApiError
	// JSON404 the response for an HTTP 404 `application/json` response
	JSON404 *ApiError
	// JSON408 the response for an HTTP 408 `application/json` response
	JSON408 *ApiError
	// JSON423 the response for an HTTP 423 `application/json` response
	JSON423 *ApiError
	// JSON429 the response for an HTTP 429 `application/json` response
	JSON429 *ApiError
	// JSON500 the response for an HTTP 500 `application/json` response
	JSON500 *ApiError
	// JSON503 the response for an HTTP 503 `application/json` response
	JSON503 *ApiError
	// Headers200 the parsed response headers for an HTTP 200 response
	Headers200 *GetMarketContextMarkdownResponse200Headers
	// Headers429 the parsed response headers for an HTTP 429 response
	Headers429 *GetMarketContextMarkdownResponse429Headers
	// Headers503 the parsed response headers for an HTTP 503 response
	Headers503 *GetMarketContextMarkdownResponse503Headers
}

func ParseGetMarketContextMarkdownResponse added in v0.2.0

func ParseGetMarketContextMarkdownResponse(rsp *http.Response) (*GetMarketContextMarkdownResponse, error)

ParseGetMarketContextMarkdownResponse parses an HTTP response from a GetMarketContextMarkdownWithResponse call

func (GetMarketContextMarkdownResponse) ContentType added in v0.2.0

func (r GetMarketContextMarkdownResponse) ContentType() string

ContentType is a convenience method to retrieve the Content-Type value from the HTTP response headers

func (GetMarketContextMarkdownResponse) GetBody added in v0.2.0

func (r GetMarketContextMarkdownResponse) GetBody() []byte

GetBody returns the raw response body bytes

func (GetMarketContextMarkdownResponse) GetJSON400 added in v0.2.0

GetJSON400 returns the response for an HTTP 400 `application/json` response

func (GetMarketContextMarkdownResponse) GetJSON401 added in v0.2.0

GetJSON401 returns the response for an HTTP 401 `application/json` response

func (GetMarketContextMarkdownResponse) GetJSON402 added in v0.2.0

GetJSON402 returns the response for an HTTP 402 `application/json` response

func (GetMarketContextMarkdownResponse) GetJSON403 added in v0.2.0

GetJSON403 returns the response for an HTTP 403 `application/json` response

func (GetMarketContextMarkdownResponse) GetJSON404 added in v0.2.0

GetJSON404 returns the response for an HTTP 404 `application/json` response

func (GetMarketContextMarkdownResponse) GetJSON408 added in v0.2.0

GetJSON408 returns the response for an HTTP 408 `application/json` response

func (GetMarketContextMarkdownResponse) GetJSON423 added in v0.2.0

GetJSON423 returns the response for an HTTP 423 `application/json` response

func (GetMarketContextMarkdownResponse) GetJSON429 added in v0.2.0

GetJSON429 returns the response for an HTTP 429 `application/json` response

func (GetMarketContextMarkdownResponse) GetJSON500 added in v0.2.0

GetJSON500 returns the response for an HTTP 500 `application/json` response

func (GetMarketContextMarkdownResponse) GetJSON503 added in v0.2.0

GetJSON503 returns the response for an HTTP 503 `application/json` response

func (GetMarketContextMarkdownResponse) Status added in v0.2.0

Status returns HTTPResponse.Status

func (GetMarketContextMarkdownResponse) StatusCode added in v0.2.0

func (r GetMarketContextMarkdownResponse) StatusCode() int

StatusCode returns HTTPResponse.StatusCode

type GetMarketContextMarkdownResponse200Headers added in v0.2.0

type GetMarketContextMarkdownResponse200Headers struct {
	RateLimitLimit      *int
	RateLimitRemaining  *int
	RateLimitReset      *int
	ServerTiming        *string
	XEffectiveQuery     *string
	XQueryIgnored       *string
	XRateLimitLimit     *int
	XRateLimitRemaining *int
	XRateLimitReset     *int
	XRequestId          *string
	XUsageAccounting    *string
}

GetMarketContextMarkdownResponse200Headers the declared response headers of an HTTP 200 response for GetMarketContextMarkdown

type GetMarketContextMarkdownResponse429Headers added in v0.2.0

type GetMarketContextMarkdownResponse429Headers struct {
	RateLimitLimit      *int
	RateLimitRemaining  *int
	RateLimitReset      *int
	RetryAfter          *int
	XRateLimitLimit     *int
	XRateLimitRemaining *int
	XRateLimitReset     *int
	XRequestId          *string
}

GetMarketContextMarkdownResponse429Headers the declared response headers of an HTTP 429 response for GetMarketContextMarkdown

type GetMarketContextMarkdownResponse503Headers added in v0.2.0

type GetMarketContextMarkdownResponse503Headers struct {
	RetryAfter *int
	XRequestId *string
}

GetMarketContextMarkdownResponse503Headers the declared response headers of an HTTP 503 response for GetMarketContextMarkdown

type GetMarketFlow200JSONResponseBodyObject added in v0.4.0

type GetMarketFlow200JSONResponseBodyObject string

GetMarketFlow200JSONResponseBodyObject defines parameters for GetMarketFlow.

const (
	GetMarketFlow200JSONResponseBodyObjectMarketFlow GetMarketFlow200JSONResponseBodyObject = "market_flow"
)

Defines values for GetMarketFlow200JSONResponseBodyObject.

func (GetMarketFlow200JSONResponseBodyObject) Valid added in v0.4.0

Valid indicates whether the value is a known member of the GetMarketFlow200JSONResponseBodyObject enum.

type GetMarketFlowParams added in v0.4.0

type GetMarketFlowParams struct {
	// Timeframe Lookback window for whale flow aggregation.
	Timeframe *GetMarketFlowParamsTimeframe `form:"timeframe,omitempty" json:"timeframe,omitempty"`

	// XQueryValidation Opt into strict query-name validation. The default is compatible: unknown names are ignored and reported in X-Query-Ignored. With strict, an unknown name returns 400 bad_request with error.reason unknown_query_parameter before the handler runs, including when its percent escape is incomplete.
	XQueryValidation *GetMarketFlowParamsXQueryValidation `json:"X-Query-Validation,omitempty"`

	// IfNoneMatch Conditional GET validator from a previous ETag. Matching values return 304 Not Modified with an empty body.
	IfNoneMatch *string `json:"If-None-Match,omitempty"`
}

GetMarketFlowParams defines parameters for GetMarketFlow.

type GetMarketFlowParamsTimeframe added in v0.4.0

type GetMarketFlowParamsTimeframe string

GetMarketFlowParamsTimeframe defines parameters for GetMarketFlow.

const (
	GetMarketFlowParamsTimeframeN1h  GetMarketFlowParamsTimeframe = "1h"
	GetMarketFlowParamsTimeframeN24h GetMarketFlowParamsTimeframe = "24h"
	GetMarketFlowParamsTimeframeN4h  GetMarketFlowParamsTimeframe = "4h"
	GetMarketFlowParamsTimeframeN7d  GetMarketFlowParamsTimeframe = "7d"
)

Defines values for GetMarketFlowParamsTimeframe.

func (GetMarketFlowParamsTimeframe) Valid added in v0.4.0

Valid indicates whether the value is a known member of the GetMarketFlowParamsTimeframe enum.

type GetMarketFlowParamsXQueryValidation added in v0.4.0

type GetMarketFlowParamsXQueryValidation string

GetMarketFlowParamsXQueryValidation defines parameters for GetMarketFlow.

const (
	GetMarketFlowParamsXQueryValidationStrict GetMarketFlowParamsXQueryValidation = "strict"
)

Defines values for GetMarketFlowParamsXQueryValidation.

func (GetMarketFlowParamsXQueryValidation) Valid added in v0.4.0

Valid indicates whether the value is a known member of the GetMarketFlowParamsXQueryValidation enum.

type GetMarketFlowResponse added in v0.4.0

type GetMarketFlowResponse struct {
	Body         []byte
	HTTPResponse *http.Response
	// JSON200 the response for an HTTP 200 `application/json` response
	JSON200 *struct {
		Data   MarketFlow                             `json:"data"`
		Meta   ResponseMeta                           `json:"meta"`
		Object GetMarketFlow200JSONResponseBodyObject `json:"object"`
	}
	// JSON400 the response for an HTTP 400 `application/json` response
	JSON400 *ApiError
	// JSON401 the response for an HTTP 401 `application/json` response
	JSON401 *ApiError
	// JSON402 the response for an HTTP 402 `application/json` response
	JSON402 *ApiError
	// JSON403 the response for an HTTP 403 `application/json` response
	JSON403 *ApiError
	// JSON404 the response for an HTTP 404 `application/json` response
	JSON404 *ApiError
	// JSON408 the response for an HTTP 408 `application/json` response
	JSON408 *ApiError
	// JSON423 the response for an HTTP 423 `application/json` response
	JSON423 *ApiError
	// JSON429 the response for an HTTP 429 `application/json` response
	JSON429 *ApiError
	// JSON500 the response for an HTTP 500 `application/json` response
	JSON500 *ApiError
	// JSON503 the response for an HTTP 503 `application/json` response
	JSON503 *ApiError
	// Headers200 the parsed response headers for an HTTP 200 response
	Headers200 *GetMarketFlowResponse200Headers
	// Headers304 the parsed response headers for an HTTP 304 response
	Headers304 *GetMarketFlowResponse304Headers
	// Headers429 the parsed response headers for an HTTP 429 response
	Headers429 *GetMarketFlowResponse429Headers
	// Headers503 the parsed response headers for an HTTP 503 response
	Headers503 *GetMarketFlowResponse503Headers
}

func ParseGetMarketFlowResponse added in v0.4.0

func ParseGetMarketFlowResponse(rsp *http.Response) (*GetMarketFlowResponse, error)

ParseGetMarketFlowResponse parses an HTTP response from a GetMarketFlowWithResponse call

func (GetMarketFlowResponse) ContentType added in v0.4.0

func (r GetMarketFlowResponse) ContentType() string

ContentType is a convenience method to retrieve the Content-Type value from the HTTP response headers

func (GetMarketFlowResponse) GetBody added in v0.4.0

func (r GetMarketFlowResponse) GetBody() []byte

GetBody returns the raw response body bytes

func (GetMarketFlowResponse) GetJSON200 added in v0.4.0

func (r GetMarketFlowResponse) GetJSON200() *struct {
	Data   MarketFlow                             `json:"data"`
	Meta   ResponseMeta                           `json:"meta"`
	Object GetMarketFlow200JSONResponseBodyObject `json:"object"`
}

GetJSON200 returns the response for an HTTP 200 `application/json` response

func (GetMarketFlowResponse) GetJSON400 added in v0.4.0

func (r GetMarketFlowResponse) GetJSON400() *ApiError

GetJSON400 returns the response for an HTTP 400 `application/json` response

func (GetMarketFlowResponse) GetJSON401 added in v0.4.0

func (r GetMarketFlowResponse) GetJSON401() *ApiError

GetJSON401 returns the response for an HTTP 401 `application/json` response

func (GetMarketFlowResponse) GetJSON402 added in v0.4.0

func (r GetMarketFlowResponse) GetJSON402() *ApiError

GetJSON402 returns the response for an HTTP 402 `application/json` response

func (GetMarketFlowResponse) GetJSON403 added in v0.4.0

func (r GetMarketFlowResponse) GetJSON403() *ApiError

GetJSON403 returns the response for an HTTP 403 `application/json` response

func (GetMarketFlowResponse) GetJSON404 added in v0.4.0

func (r GetMarketFlowResponse) GetJSON404() *ApiError

GetJSON404 returns the response for an HTTP 404 `application/json` response

func (GetMarketFlowResponse) GetJSON408 added in v0.4.0

func (r GetMarketFlowResponse) GetJSON408() *ApiError

GetJSON408 returns the response for an HTTP 408 `application/json` response

func (GetMarketFlowResponse) GetJSON423 added in v0.4.0

func (r GetMarketFlowResponse) GetJSON423() *ApiError

GetJSON423 returns the response for an HTTP 423 `application/json` response

func (GetMarketFlowResponse) GetJSON429 added in v0.4.0

func (r GetMarketFlowResponse) GetJSON429() *ApiError

GetJSON429 returns the response for an HTTP 429 `application/json` response

func (GetMarketFlowResponse) GetJSON500 added in v0.4.0

func (r GetMarketFlowResponse) GetJSON500() *ApiError

GetJSON500 returns the response for an HTTP 500 `application/json` response

func (GetMarketFlowResponse) GetJSON503 added in v0.4.0

func (r GetMarketFlowResponse) GetJSON503() *ApiError

GetJSON503 returns the response for an HTTP 503 `application/json` response

func (GetMarketFlowResponse) Status added in v0.4.0

func (r GetMarketFlowResponse) Status() string

Status returns HTTPResponse.Status

func (GetMarketFlowResponse) StatusCode added in v0.4.0

func (r GetMarketFlowResponse) StatusCode() int

StatusCode returns HTTPResponse.StatusCode

type GetMarketFlowResponse200Headers added in v0.4.0

type GetMarketFlowResponse200Headers struct {
	ETag                *string
	RateLimitLimit      *int
	RateLimitRemaining  *int
	RateLimitReset      *int
	ServerTiming        *string
	XEffectiveQuery     *string
	XQueryIgnored       *string
	XRateLimitLimit     *int
	XRateLimitRemaining *int
	XRateLimitReset     *int
	XRequestId          *string
	XUsageAccounting    *string
}

GetMarketFlowResponse200Headers the declared response headers of an HTTP 200 response for GetMarketFlow

type GetMarketFlowResponse304Headers added in v0.4.0

type GetMarketFlowResponse304Headers struct {
	ETag                *string
	RateLimitLimit      *int
	RateLimitRemaining  *int
	RateLimitReset      *int
	ServerTiming        *string
	XEffectiveQuery     *string
	XQueryIgnored       *string
	XRateLimitLimit     *int
	XRateLimitRemaining *int
	XRateLimitReset     *int
	XRequestId          *string
	XUsageAccounting    *string
}

GetMarketFlowResponse304Headers the declared response headers of an HTTP 304 response for GetMarketFlow

type GetMarketFlowResponse429Headers added in v0.4.0

type GetMarketFlowResponse429Headers struct {
	RateLimitLimit      *int
	RateLimitRemaining  *int
	RateLimitReset      *int
	RetryAfter          *int
	XRateLimitLimit     *int
	XRateLimitRemaining *int
	XRateLimitReset     *int
	XRequestId          *string
}

GetMarketFlowResponse429Headers the declared response headers of an HTTP 429 response for GetMarketFlow

type GetMarketFlowResponse503Headers added in v0.4.0

type GetMarketFlowResponse503Headers struct {
	RetryAfter *int
	XRequestId *string
}

GetMarketFlowResponse503Headers the declared response headers of an HTTP 503 response for GetMarketFlow

type GetMarketHolders200JSONResponseBodyObject added in v0.2.0

type GetMarketHolders200JSONResponseBodyObject string

GetMarketHolders200JSONResponseBodyObject defines parameters for GetMarketHolders.

const (
	GetMarketHolders200JSONResponseBodyObjectList GetMarketHolders200JSONResponseBodyObject = "list"
)

Defines values for GetMarketHolders200JSONResponseBodyObject.

func (GetMarketHolders200JSONResponseBodyObject) Valid added in v0.2.0

Valid indicates whether the value is a known member of the GetMarketHolders200JSONResponseBodyObject enum.

type GetMarketHoldersParams added in v0.2.0

type GetMarketHoldersParams struct {
	// Outcome Keep holders netting one side. `all` (default) lists both.
	Outcome *GetMarketHoldersParamsOutcome `form:"outcome,omitempty" json:"outcome,omitempty"`

	// MinGrade Narrow within the graded cohort: `S` keeps S, `A` keeps S and A, `B` (default) keeps S, A and B. `C`, `D` and `F` are rejected with 400: the route lists the S/A/B cohort only. The cohort is the wallet's current grade (`traders.latest_grade`), so no value here reaches a C, D, F or ungraded holder; those are counted only in `scan.wallet_count`. `min_grade=D` on GET /api/v1/positions does return C and D, which is one of the three reasons the two routes' counts differ for the same market.
	MinGrade *GetMarketHoldersParamsMinGrade `form:"min_grade,omitempty" json:"min_grade,omitempty"`

	// Limit Maximum holders per page. Out-of-range values are clamped to 1..100.
	Limit *int `form:"limit,omitempty" json:"limit,omitempty"`

	// Cursor Opaque pagination cursor from the previous response's next_cursor. It encodes a page of one shared roster, so it stays valid across the roster's refresh, but a page read after a refresh can repeat or skip a holder.
	Cursor *string `form:"cursor,omitempty" json:"cursor,omitempty"`

	// XQueryValidation Opt into strict query-name validation. The default is compatible: unknown names are ignored and reported in X-Query-Ignored. With strict, an unknown name returns 400 bad_request with error.reason unknown_query_parameter before the handler runs, including when its percent escape is incomplete.
	XQueryValidation *GetMarketHoldersParamsXQueryValidation `json:"X-Query-Validation,omitempty"`

	// IfNoneMatch Conditional GET validator from a previous ETag. Matching values return 304 Not Modified with an empty body.
	IfNoneMatch *string `json:"If-None-Match,omitempty"`
}

GetMarketHoldersParams defines parameters for GetMarketHolders.

type GetMarketHoldersParamsMinGrade added in v0.2.0

type GetMarketHoldersParamsMinGrade string

GetMarketHoldersParamsMinGrade defines parameters for GetMarketHolders.

const (
	GetMarketHoldersParamsMinGradeA GetMarketHoldersParamsMinGrade = "A"
	GetMarketHoldersParamsMinGradeB GetMarketHoldersParamsMinGrade = "B"
	GetMarketHoldersParamsMinGradeS GetMarketHoldersParamsMinGrade = "S"
)

Defines values for GetMarketHoldersParamsMinGrade.

func (GetMarketHoldersParamsMinGrade) Valid added in v0.2.0

Valid indicates whether the value is a known member of the GetMarketHoldersParamsMinGrade enum.

type GetMarketHoldersParamsOutcome added in v0.2.0

type GetMarketHoldersParamsOutcome string

GetMarketHoldersParamsOutcome defines parameters for GetMarketHolders.

const (
	GetMarketHoldersParamsOutcomeAll GetMarketHoldersParamsOutcome = "all"
	GetMarketHoldersParamsOutcomeNo  GetMarketHoldersParamsOutcome = "no"
	GetMarketHoldersParamsOutcomeYes GetMarketHoldersParamsOutcome = "yes"
)

Defines values for GetMarketHoldersParamsOutcome.

func (GetMarketHoldersParamsOutcome) Valid added in v0.2.0

Valid indicates whether the value is a known member of the GetMarketHoldersParamsOutcome enum.

type GetMarketHoldersParamsXQueryValidation added in v0.3.0

type GetMarketHoldersParamsXQueryValidation string

GetMarketHoldersParamsXQueryValidation defines parameters for GetMarketHolders.

const (
	GetMarketHoldersParamsXQueryValidationStrict GetMarketHoldersParamsXQueryValidation = "strict"
)

Defines values for GetMarketHoldersParamsXQueryValidation.

func (GetMarketHoldersParamsXQueryValidation) Valid added in v0.3.0

Valid indicates whether the value is a known member of the GetMarketHoldersParamsXQueryValidation enum.

type GetMarketHoldersResponse added in v0.2.0

type GetMarketHoldersResponse struct {
	Body         []byte
	HTTPResponse *http.Response
	// JSON200 the response for an HTTP 200 `application/json` response
	JSON200 *struct {
		Data    []MarketHolder      `json:"data"`
		HasMore bool                `json:"has_more"`
		Market  MarketHoldersMarket `json:"market"`
		Meta    ResponseMeta        `json:"meta"`

		// NextCursor Absent on the last page.
		NextCursor *string                                   `json:"next_cursor,omitempty"`
		Object     GetMarketHolders200JSONResponseBodyObject `json:"object"`
		Scan       MarketHoldersScan                         `json:"scan"`

		// Total Holders matching the request's `outcome` and `min_grade` filters across every page.
		Total *int `json:"total,omitempty"`

		// Totals Roster totals BEFORE any `outcome` or `min_grade` filter, so a page always knows the whole market it was cut from.
		Totals MarketHoldersTotals `json:"totals"`
	}
	// JSON400 the response for an HTTP 400 `application/json` response
	JSON400 *ApiError
	// JSON401 the response for an HTTP 401 `application/json` response
	JSON401 *ApiError
	// JSON402 the response for an HTTP 402 `application/json` response
	JSON402 *ApiError
	// JSON403 the response for an HTTP 403 `application/json` response
	JSON403 *ApiError
	// JSON404 the response for an HTTP 404 `application/json` response
	JSON404 *ApiError
	// JSON408 the response for an HTTP 408 `application/json` response
	JSON408 *ApiError
	// JSON429 the response for an HTTP 429 `application/json` response
	JSON429 *ApiError
	// JSON500 the response for an HTTP 500 `application/json` response
	JSON500 *ApiError
	// JSON503 the response for an HTTP 503 `application/json` response
	JSON503 *ApiError
	// Headers200 the parsed response headers for an HTTP 200 response
	Headers200 *GetMarketHoldersResponse200Headers
	// Headers304 the parsed response headers for an HTTP 304 response
	Headers304 *GetMarketHoldersResponse304Headers
	// Headers429 the parsed response headers for an HTTP 429 response
	Headers429 *GetMarketHoldersResponse429Headers
	// Headers503 the parsed response headers for an HTTP 503 response
	Headers503 *GetMarketHoldersResponse503Headers
}

func ParseGetMarketHoldersResponse added in v0.2.0

func ParseGetMarketHoldersResponse(rsp *http.Response) (*GetMarketHoldersResponse, error)

ParseGetMarketHoldersResponse parses an HTTP response from a GetMarketHoldersWithResponse call

func (GetMarketHoldersResponse) ContentType added in v0.2.0

func (r GetMarketHoldersResponse) ContentType() string

ContentType is a convenience method to retrieve the Content-Type value from the HTTP response headers

func (GetMarketHoldersResponse) GetBody added in v0.2.0

func (r GetMarketHoldersResponse) GetBody() []byte

GetBody returns the raw response body bytes

func (GetMarketHoldersResponse) GetJSON200 added in v0.2.0

func (r GetMarketHoldersResponse) GetJSON200() *struct {
	Data    []MarketHolder      `json:"data"`
	HasMore bool                `json:"has_more"`
	Market  MarketHoldersMarket `json:"market"`
	Meta    ResponseMeta        `json:"meta"`

	// NextCursor Absent on the last page.
	NextCursor *string                                   `json:"next_cursor,omitempty"`
	Object     GetMarketHolders200JSONResponseBodyObject `json:"object"`
	Scan       MarketHoldersScan                         `json:"scan"`

	// Total Holders matching the request's `outcome` and `min_grade` filters across every page.
	Total *int `json:"total,omitempty"`

	// Totals Roster totals BEFORE any `outcome` or `min_grade` filter, so a page always knows the whole market it was cut from.
	Totals MarketHoldersTotals `json:"totals"`
}

GetJSON200 returns the response for an HTTP 200 `application/json` response

func (GetMarketHoldersResponse) GetJSON400 added in v0.2.0

func (r GetMarketHoldersResponse) GetJSON400() *ApiError

GetJSON400 returns the response for an HTTP 400 `application/json` response

func (GetMarketHoldersResponse) GetJSON401 added in v0.2.0

func (r GetMarketHoldersResponse) GetJSON401() *ApiError

GetJSON401 returns the response for an HTTP 401 `application/json` response

func (GetMarketHoldersResponse) GetJSON402 added in v0.2.0

func (r GetMarketHoldersResponse) GetJSON402() *ApiError

GetJSON402 returns the response for an HTTP 402 `application/json` response

func (GetMarketHoldersResponse) GetJSON403 added in v0.2.0

func (r GetMarketHoldersResponse) GetJSON403() *ApiError

GetJSON403 returns the response for an HTTP 403 `application/json` response

func (GetMarketHoldersResponse) GetJSON404 added in v0.2.0

func (r GetMarketHoldersResponse) GetJSON404() *ApiError

GetJSON404 returns the response for an HTTP 404 `application/json` response

func (GetMarketHoldersResponse) GetJSON408 added in v0.2.0

func (r GetMarketHoldersResponse) GetJSON408() *ApiError

GetJSON408 returns the response for an HTTP 408 `application/json` response

func (GetMarketHoldersResponse) GetJSON429 added in v0.2.0

func (r GetMarketHoldersResponse) GetJSON429() *ApiError

GetJSON429 returns the response for an HTTP 429 `application/json` response

func (GetMarketHoldersResponse) GetJSON500 added in v0.4.0

func (r GetMarketHoldersResponse) GetJSON500() *ApiError

GetJSON500 returns the response for an HTTP 500 `application/json` response

func (GetMarketHoldersResponse) GetJSON503 added in v0.2.0

func (r GetMarketHoldersResponse) GetJSON503() *ApiError

GetJSON503 returns the response for an HTTP 503 `application/json` response

func (GetMarketHoldersResponse) Status added in v0.2.0

func (r GetMarketHoldersResponse) Status() string

Status returns HTTPResponse.Status

func (GetMarketHoldersResponse) StatusCode added in v0.2.0

func (r GetMarketHoldersResponse) StatusCode() int

StatusCode returns HTTPResponse.StatusCode

type GetMarketHoldersResponse200Headers added in v0.2.0

type GetMarketHoldersResponse200Headers struct {
	ETag                *string
	RateLimitLimit      *int
	RateLimitRemaining  *int
	RateLimitReset      *int
	ServerTiming        *string
	XEffectiveQuery     *string
	XQueryIgnored       *string
	XRateLimitLimit     *int
	XRateLimitRemaining *int
	XRateLimitReset     *int
	XRequestId          *string
	XUsageAccounting    *string
}

GetMarketHoldersResponse200Headers the declared response headers of an HTTP 200 response for GetMarketHolders

type GetMarketHoldersResponse304Headers added in v0.2.0

type GetMarketHoldersResponse304Headers struct {
	ETag                *string
	RateLimitLimit      *int
	RateLimitRemaining  *int
	RateLimitReset      *int
	ServerTiming        *string
	XEffectiveQuery     *string
	XQueryIgnored       *string
	XRateLimitLimit     *int
	XRateLimitRemaining *int
	XRateLimitReset     *int
	XRequestId          *string
	XUsageAccounting    *string
}

GetMarketHoldersResponse304Headers the declared response headers of an HTTP 304 response for GetMarketHolders

type GetMarketHoldersResponse429Headers added in v0.2.0

type GetMarketHoldersResponse429Headers struct {
	RateLimitLimit      *int
	RateLimitRemaining  *int
	RateLimitReset      *int
	RetryAfter          *int
	XRateLimitLimit     *int
	XRateLimitRemaining *int
	XRateLimitReset     *int
	XRequestId          *string
}

GetMarketHoldersResponse429Headers the declared response headers of an HTTP 429 response for GetMarketHolders

type GetMarketHoldersResponse503Headers added in v0.2.0

type GetMarketHoldersResponse503Headers struct {
	RetryAfter *int
	XRequestId *string
}

GetMarketHoldersResponse503Headers the declared response headers of an HTTP 503 response for GetMarketHolders

type GetMarketIntel200JSONResponseBodyObject

type GetMarketIntel200JSONResponseBodyObject string

GetMarketIntel200JSONResponseBodyObject defines parameters for GetMarketIntel.

const (
	MarketIntel GetMarketIntel200JSONResponseBodyObject = "market_intel"
)

Defines values for GetMarketIntel200JSONResponseBodyObject.

func (GetMarketIntel200JSONResponseBodyObject) Valid

Valid indicates whether the value is a known member of the GetMarketIntel200JSONResponseBodyObject enum.

type GetMarketIntelParams

type GetMarketIntelParams struct {
	// Timeframe Lookback window for whale flow aggregation.
	Timeframe *GetMarketIntelParamsTimeframe `form:"timeframe,omitempty" json:"timeframe,omitempty"`

	// XQueryValidation Opt into strict query-name validation. The default is compatible: unknown names are ignored and reported in X-Query-Ignored. With strict, an unknown name returns 400 bad_request with error.reason unknown_query_parameter before the handler runs, including when its percent escape is incomplete.
	XQueryValidation *GetMarketIntelParamsXQueryValidation `json:"X-Query-Validation,omitempty"`

	// IfNoneMatch Conditional GET validator from a previous ETag. Matching values return 304 Not Modified with an empty body.
	IfNoneMatch *string `json:"If-None-Match,omitempty"`
}

GetMarketIntelParams defines parameters for GetMarketIntel.

type GetMarketIntelParamsTimeframe

type GetMarketIntelParamsTimeframe string

GetMarketIntelParamsTimeframe defines parameters for GetMarketIntel.

const (
	GetMarketIntelParamsTimeframeN1h  GetMarketIntelParamsTimeframe = "1h"
	GetMarketIntelParamsTimeframeN24h GetMarketIntelParamsTimeframe = "24h"
	GetMarketIntelParamsTimeframeN4h  GetMarketIntelParamsTimeframe = "4h"
	GetMarketIntelParamsTimeframeN7d  GetMarketIntelParamsTimeframe = "7d"
)

Defines values for GetMarketIntelParamsTimeframe.

func (GetMarketIntelParamsTimeframe) Valid

Valid indicates whether the value is a known member of the GetMarketIntelParamsTimeframe enum.

type GetMarketIntelParamsXQueryValidation added in v0.3.0

type GetMarketIntelParamsXQueryValidation string

GetMarketIntelParamsXQueryValidation defines parameters for GetMarketIntel.

const (
	GetMarketIntelParamsXQueryValidationStrict GetMarketIntelParamsXQueryValidation = "strict"
)

Defines values for GetMarketIntelParamsXQueryValidation.

func (GetMarketIntelParamsXQueryValidation) Valid added in v0.3.0

Valid indicates whether the value is a known member of the GetMarketIntelParamsXQueryValidation enum.

type GetMarketIntelResponse

type GetMarketIntelResponse struct {
	Body         []byte
	HTTPResponse *http.Response
	// JSON200 the response for an HTTP 200 `application/json` response
	JSON200 *struct {
		Data   MarketFlow                              `json:"data"`
		Meta   ResponseMeta                            `json:"meta"`
		Object GetMarketIntel200JSONResponseBodyObject `json:"object"`
	}
	// JSON400 the response for an HTTP 400 `application/json` response
	JSON400 *ApiError
	// JSON401 the response for an HTTP 401 `application/json` response
	JSON401 *ApiError
	// JSON402 the response for an HTTP 402 `application/json` response
	JSON402 *ApiError
	// JSON403 the response for an HTTP 403 `application/json` response
	JSON403 *ApiError
	// JSON404 the response for an HTTP 404 `application/json` response
	JSON404 *ApiError
	// JSON408 the response for an HTTP 408 `application/json` response
	JSON408 *ApiError
	// JSON423 the response for an HTTP 423 `application/json` response
	JSON423 *ApiError
	// JSON429 the response for an HTTP 429 `application/json` response
	JSON429 *ApiError
	// JSON500 the response for an HTTP 500 `application/json` response
	JSON500 *ApiError
	// JSON503 the response for an HTTP 503 `application/json` response
	JSON503 *ApiError
	// Headers200 the parsed response headers for an HTTP 200 response
	Headers200 *GetMarketIntelResponse200Headers
	// Headers304 the parsed response headers for an HTTP 304 response
	Headers304 *GetMarketIntelResponse304Headers
	// Headers429 the parsed response headers for an HTTP 429 response
	Headers429 *GetMarketIntelResponse429Headers
	// Headers503 the parsed response headers for an HTTP 503 response
	Headers503 *GetMarketIntelResponse503Headers
}

func ParseGetMarketIntelResponse

func ParseGetMarketIntelResponse(rsp *http.Response) (*GetMarketIntelResponse, error)

ParseGetMarketIntelResponse parses an HTTP response from a GetMarketIntelWithResponse call

func (GetMarketIntelResponse) ContentType

func (r GetMarketIntelResponse) ContentType() string

ContentType is a convenience method to retrieve the Content-Type value from the HTTP response headers

func (GetMarketIntelResponse) GetBody

func (r GetMarketIntelResponse) GetBody() []byte

GetBody returns the raw response body bytes

func (GetMarketIntelResponse) GetJSON200

func (r GetMarketIntelResponse) GetJSON200() *struct {
	Data   MarketFlow                              `json:"data"`
	Meta   ResponseMeta                            `json:"meta"`
	Object GetMarketIntel200JSONResponseBodyObject `json:"object"`
}

GetJSON200 returns the response for an HTTP 200 `application/json` response

func (GetMarketIntelResponse) GetJSON400

func (r GetMarketIntelResponse) GetJSON400() *ApiError

GetJSON400 returns the response for an HTTP 400 `application/json` response

func (GetMarketIntelResponse) GetJSON401

func (r GetMarketIntelResponse) GetJSON401() *ApiError

GetJSON401 returns the response for an HTTP 401 `application/json` response

func (GetMarketIntelResponse) GetJSON402

func (r GetMarketIntelResponse) GetJSON402() *ApiError

GetJSON402 returns the response for an HTTP 402 `application/json` response

func (GetMarketIntelResponse) GetJSON403

func (r GetMarketIntelResponse) GetJSON403() *ApiError

GetJSON403 returns the response for an HTTP 403 `application/json` response

func (GetMarketIntelResponse) GetJSON404

func (r GetMarketIntelResponse) GetJSON404() *ApiError

GetJSON404 returns the response for an HTTP 404 `application/json` response

func (GetMarketIntelResponse) GetJSON408 added in v0.2.0

func (r GetMarketIntelResponse) GetJSON408() *ApiError

GetJSON408 returns the response for an HTTP 408 `application/json` response

func (GetMarketIntelResponse) GetJSON423

func (r GetMarketIntelResponse) GetJSON423() *ApiError

GetJSON423 returns the response for an HTTP 423 `application/json` response

func (GetMarketIntelResponse) GetJSON429

func (r GetMarketIntelResponse) GetJSON429() *ApiError

GetJSON429 returns the response for an HTTP 429 `application/json` response

func (GetMarketIntelResponse) GetJSON500 added in v0.4.0

func (r GetMarketIntelResponse) GetJSON500() *ApiError

GetJSON500 returns the response for an HTTP 500 `application/json` response

func (GetMarketIntelResponse) GetJSON503

func (r GetMarketIntelResponse) GetJSON503() *ApiError

GetJSON503 returns the response for an HTTP 503 `application/json` response

func (GetMarketIntelResponse) Status

func (r GetMarketIntelResponse) Status() string

Status returns HTTPResponse.Status

func (GetMarketIntelResponse) StatusCode

func (r GetMarketIntelResponse) StatusCode() int

StatusCode returns HTTPResponse.StatusCode

type GetMarketIntelResponse200Headers

type GetMarketIntelResponse200Headers struct {
	ETag                *string
	RateLimitLimit      *int
	RateLimitRemaining  *int
	RateLimitReset      *int
	ServerTiming        *string
	XEffectiveQuery     *string
	XQueryIgnored       *string
	XRateLimitLimit     *int
	XRateLimitRemaining *int
	XRateLimitReset     *int
	XRequestId          *string
	XUsageAccounting    *string
}

GetMarketIntelResponse200Headers the declared response headers of an HTTP 200 response for GetMarketIntel

type GetMarketIntelResponse304Headers

type GetMarketIntelResponse304Headers struct {
	ETag                *string
	RateLimitLimit      *int
	RateLimitRemaining  *int
	RateLimitReset      *int
	ServerTiming        *string
	XEffectiveQuery     *string
	XQueryIgnored       *string
	XRateLimitLimit     *int
	XRateLimitRemaining *int
	XRateLimitReset     *int
	XRequestId          *string
	XUsageAccounting    *string
}

GetMarketIntelResponse304Headers the declared response headers of an HTTP 304 response for GetMarketIntel

type GetMarketIntelResponse429Headers

type GetMarketIntelResponse429Headers struct {
	RateLimitLimit      *int
	RateLimitRemaining  *int
	RateLimitReset      *int
	RetryAfter          *int
	XRateLimitLimit     *int
	XRateLimitRemaining *int
	XRateLimitReset     *int
	XRequestId          *string
}

GetMarketIntelResponse429Headers the declared response headers of an HTTP 429 response for GetMarketIntel

type GetMarketIntelResponse503Headers

type GetMarketIntelResponse503Headers struct {
	RetryAfter *int
	XRequestId *string
}

GetMarketIntelResponse503Headers the declared response headers of an HTTP 503 response for GetMarketIntel

type GetMarketSnapshot200JSONResponseBodyObject

type GetMarketSnapshot200JSONResponseBodyObject string

GetMarketSnapshot200JSONResponseBodyObject defines parameters for GetMarketSnapshot.

const (
	GetMarketSnapshot200JSONResponseBodyObjectMarketSnapshot GetMarketSnapshot200JSONResponseBodyObject = "market_snapshot"
)

Defines values for GetMarketSnapshot200JSONResponseBodyObject.

func (GetMarketSnapshot200JSONResponseBodyObject) Valid

Valid indicates whether the value is a known member of the GetMarketSnapshot200JSONResponseBodyObject enum.

type GetMarketSnapshotParams

type GetMarketSnapshotParams struct {
	// Expand Include trust metadata for current_price and spread_bps. Repeatable: trust.
	Expand *[]GetMarketSnapshotParamsExpand `form:"expand,omitempty" json:"expand,omitempty"`

	// XQueryValidation Opt into strict query-name validation. The default is compatible: unknown names are ignored and reported in X-Query-Ignored. With strict, an unknown name returns 400 bad_request with error.reason unknown_query_parameter before the handler runs, including when its percent escape is incomplete.
	XQueryValidation *GetMarketSnapshotParamsXQueryValidation `json:"X-Query-Validation,omitempty"`

	// IfNoneMatch Conditional GET validator from a previous ETag. Matching values return 304 Not Modified with an empty body.
	IfNoneMatch *string `json:"If-None-Match,omitempty"`
}

GetMarketSnapshotParams defines parameters for GetMarketSnapshot.

type GetMarketSnapshotParamsExpand

type GetMarketSnapshotParamsExpand string

GetMarketSnapshotParamsExpand defines parameters for GetMarketSnapshot.

const (
	GetMarketSnapshotParamsExpandTrust GetMarketSnapshotParamsExpand = "trust"
)

Defines values for GetMarketSnapshotParamsExpand.

func (GetMarketSnapshotParamsExpand) Valid

Valid indicates whether the value is a known member of the GetMarketSnapshotParamsExpand enum.

type GetMarketSnapshotParamsXQueryValidation added in v0.3.0

type GetMarketSnapshotParamsXQueryValidation string

GetMarketSnapshotParamsXQueryValidation defines parameters for GetMarketSnapshot.

const (
	GetMarketSnapshotParamsXQueryValidationStrict GetMarketSnapshotParamsXQueryValidation = "strict"
)

Defines values for GetMarketSnapshotParamsXQueryValidation.

func (GetMarketSnapshotParamsXQueryValidation) Valid added in v0.3.0

Valid indicates whether the value is a known member of the GetMarketSnapshotParamsXQueryValidation enum.

type GetMarketSnapshotResponse

type GetMarketSnapshotResponse struct {
	Body         []byte
	HTTPResponse *http.Response
	// JSON200 the response for an HTTP 200 `application/json` response
	JSON200 *struct {
		Data   MarketSnapshot                             `json:"data"`
		Meta   ResponseMeta                               `json:"meta"`
		Object GetMarketSnapshot200JSONResponseBodyObject `json:"object"`
	}
	// JSON400 the response for an HTTP 400 `application/json` response
	JSON400 *ApiError
	// JSON401 the response for an HTTP 401 `application/json` response
	JSON401 *ApiError
	// JSON402 the response for an HTTP 402 `application/json` response
	JSON402 *ApiError
	// JSON403 the response for an HTTP 403 `application/json` response
	JSON403 *ApiError
	// JSON404 the response for an HTTP 404 `application/json` response
	JSON404 *ApiError
	// JSON408 the response for an HTTP 408 `application/json` response
	JSON408 *ApiError
	// JSON423 the response for an HTTP 423 `application/json` response
	JSON423 *ApiError
	// JSON429 the response for an HTTP 429 `application/json` response
	JSON429 *ApiError
	// JSON500 the response for an HTTP 500 `application/json` response
	JSON500 *ApiError
	// JSON503 the response for an HTTP 503 `application/json` response
	JSON503 *ApiError
	// Headers200 the parsed response headers for an HTTP 200 response
	Headers200 *GetMarketSnapshotResponse200Headers
	// Headers304 the parsed response headers for an HTTP 304 response
	Headers304 *GetMarketSnapshotResponse304Headers
	// Headers429 the parsed response headers for an HTTP 429 response
	Headers429 *GetMarketSnapshotResponse429Headers
	// Headers503 the parsed response headers for an HTTP 503 response
	Headers503 *GetMarketSnapshotResponse503Headers
}

func ParseGetMarketSnapshotResponse

func ParseGetMarketSnapshotResponse(rsp *http.Response) (*GetMarketSnapshotResponse, error)

ParseGetMarketSnapshotResponse parses an HTTP response from a GetMarketSnapshotWithResponse call

func (GetMarketSnapshotResponse) ContentType

func (r GetMarketSnapshotResponse) ContentType() string

ContentType is a convenience method to retrieve the Content-Type value from the HTTP response headers

func (GetMarketSnapshotResponse) GetBody

func (r GetMarketSnapshotResponse) GetBody() []byte

GetBody returns the raw response body bytes

func (GetMarketSnapshotResponse) GetJSON200

func (r GetMarketSnapshotResponse) GetJSON200() *struct {
	Data   MarketSnapshot                             `json:"data"`
	Meta   ResponseMeta                               `json:"meta"`
	Object GetMarketSnapshot200JSONResponseBodyObject `json:"object"`
}

GetJSON200 returns the response for an HTTP 200 `application/json` response

func (GetMarketSnapshotResponse) GetJSON400

func (r GetMarketSnapshotResponse) GetJSON400() *ApiError

GetJSON400 returns the response for an HTTP 400 `application/json` response

func (GetMarketSnapshotResponse) GetJSON401

func (r GetMarketSnapshotResponse) GetJSON401() *ApiError

GetJSON401 returns the response for an HTTP 401 `application/json` response

func (GetMarketSnapshotResponse) GetJSON402

func (r GetMarketSnapshotResponse) GetJSON402() *ApiError

GetJSON402 returns the response for an HTTP 402 `application/json` response

func (GetMarketSnapshotResponse) GetJSON403

func (r GetMarketSnapshotResponse) GetJSON403() *ApiError

GetJSON403 returns the response for an HTTP 403 `application/json` response

func (GetMarketSnapshotResponse) GetJSON404

func (r GetMarketSnapshotResponse) GetJSON404() *ApiError

GetJSON404 returns the response for an HTTP 404 `application/json` response

func (GetMarketSnapshotResponse) GetJSON408 added in v0.2.0

func (r GetMarketSnapshotResponse) GetJSON408() *ApiError

GetJSON408 returns the response for an HTTP 408 `application/json` response

func (GetMarketSnapshotResponse) GetJSON423

func (r GetMarketSnapshotResponse) GetJSON423() *ApiError

GetJSON423 returns the response for an HTTP 423 `application/json` response

func (GetMarketSnapshotResponse) GetJSON429

func (r GetMarketSnapshotResponse) GetJSON429() *ApiError

GetJSON429 returns the response for an HTTP 429 `application/json` response

func (GetMarketSnapshotResponse) GetJSON500 added in v0.4.0

func (r GetMarketSnapshotResponse) GetJSON500() *ApiError

GetJSON500 returns the response for an HTTP 500 `application/json` response

func (GetMarketSnapshotResponse) GetJSON503

func (r GetMarketSnapshotResponse) GetJSON503() *ApiError

GetJSON503 returns the response for an HTTP 503 `application/json` response

func (GetMarketSnapshotResponse) Status

func (r GetMarketSnapshotResponse) Status() string

Status returns HTTPResponse.Status

func (GetMarketSnapshotResponse) StatusCode

func (r GetMarketSnapshotResponse) StatusCode() int

StatusCode returns HTTPResponse.StatusCode

type GetMarketSnapshotResponse200Headers

type GetMarketSnapshotResponse200Headers struct {
	ETag                *string
	RateLimitLimit      *int
	RateLimitRemaining  *int
	RateLimitReset      *int
	ServerTiming        *string
	XEffectiveQuery     *string
	XQueryIgnored       *string
	XRateLimitLimit     *int
	XRateLimitRemaining *int
	XRateLimitReset     *int
	XRequestId          *string
	XUsageAccounting    *string
}

GetMarketSnapshotResponse200Headers the declared response headers of an HTTP 200 response for GetMarketSnapshot

type GetMarketSnapshotResponse304Headers

type GetMarketSnapshotResponse304Headers struct {
	ETag                *string
	RateLimitLimit      *int
	RateLimitRemaining  *int
	RateLimitReset      *int
	ServerTiming        *string
	XEffectiveQuery     *string
	XQueryIgnored       *string
	XRateLimitLimit     *int
	XRateLimitRemaining *int
	XRateLimitReset     *int
	XRequestId          *string
	XUsageAccounting    *string
}

GetMarketSnapshotResponse304Headers the declared response headers of an HTTP 304 response for GetMarketSnapshot

type GetMarketSnapshotResponse429Headers

type GetMarketSnapshotResponse429Headers struct {
	RateLimitLimit      *int
	RateLimitRemaining  *int
	RateLimitReset      *int
	RetryAfter          *int
	XRateLimitLimit     *int
	XRateLimitRemaining *int
	XRateLimitReset     *int
	XRequestId          *string
}

GetMarketSnapshotResponse429Headers the declared response headers of an HTTP 429 response for GetMarketSnapshot

type GetMarketSnapshotResponse503Headers

type GetMarketSnapshotResponse503Headers struct {
	RetryAfter *int
	XRequestId *string
}

GetMarketSnapshotResponse503Headers the declared response headers of an HTTP 503 response for GetMarketSnapshot

type GetMonthlyReportSnapshot200JSONResponseBodyObject

type GetMonthlyReportSnapshot200JSONResponseBodyObject string

GetMonthlyReportSnapshot200JSONResponseBodyObject defines parameters for GetMonthlyReportSnapshot.

const (
	GetMonthlyReportSnapshot200JSONResponseBodyObjectReportSnapshot GetMonthlyReportSnapshot200JSONResponseBodyObject = "report_snapshot"
)

Defines values for GetMonthlyReportSnapshot200JSONResponseBodyObject.

func (GetMonthlyReportSnapshot200JSONResponseBodyObject) Valid

Valid indicates whether the value is a known member of the GetMonthlyReportSnapshot200JSONResponseBodyObject enum.

type GetMonthlyReportSnapshotParams

type GetMonthlyReportSnapshotParams struct {
	// Month UTC report month in YYYY-MM format. A month that ends before 2024-03-01, the first day report data covers, or starts after tomorrow UTC returns 400 bad_request with error.param=month.
	Month string `form:"month" json:"month"`

	// XQueryValidation Opt into strict query-name validation. The default is compatible: unknown names are ignored and reported in X-Query-Ignored. With strict, an unknown name returns 400 bad_request with error.reason unknown_query_parameter before the handler runs, including when its percent escape is incomplete.
	XQueryValidation *GetMonthlyReportSnapshotParamsXQueryValidation `json:"X-Query-Validation,omitempty"`
}

GetMonthlyReportSnapshotParams defines parameters for GetMonthlyReportSnapshot.

type GetMonthlyReportSnapshotParamsXQueryValidation added in v0.3.0

type GetMonthlyReportSnapshotParamsXQueryValidation string

GetMonthlyReportSnapshotParamsXQueryValidation defines parameters for GetMonthlyReportSnapshot.

const (
	GetMonthlyReportSnapshotParamsXQueryValidationStrict GetMonthlyReportSnapshotParamsXQueryValidation = "strict"
)

Defines values for GetMonthlyReportSnapshotParamsXQueryValidation.

func (GetMonthlyReportSnapshotParamsXQueryValidation) Valid added in v0.3.0

Valid indicates whether the value is a known member of the GetMonthlyReportSnapshotParamsXQueryValidation enum.

type GetMonthlyReportSnapshotResponse

type GetMonthlyReportSnapshotResponse struct {
	Body         []byte
	HTTPResponse *http.Response
	// JSON200 the response for an HTTP 200 `application/json` response
	JSON200 *struct {
		Data   ReportSnapshot                                    `json:"data"`
		Meta   ResponseMeta                                      `json:"meta"`
		Object GetMonthlyReportSnapshot200JSONResponseBodyObject `json:"object"`
	}
	// JSON400 the response for an HTTP 400 `application/json` response
	JSON400 *ApiError
	// JSON401 the response for an HTTP 401 `application/json` response
	JSON401 *ApiError
	// JSON402 the response for an HTTP 402 `application/json` response
	JSON402 *ApiError
	// JSON403 the response for an HTTP 403 `application/json` response
	JSON403 *ApiError
	// JSON408 the response for an HTTP 408 `application/json` response
	JSON408 *ApiError
	// JSON423 the response for an HTTP 423 `application/json` response
	JSON423 *ApiError
	// JSON429 the response for an HTTP 429 `application/json` response
	JSON429 *ApiError
	// JSON500 the response for an HTTP 500 `application/json` response
	JSON500 *ApiError
	// JSON503 the response for an HTTP 503 `application/json` response
	JSON503 *ApiError
	// Headers200 the parsed response headers for an HTTP 200 response
	Headers200 *GetMonthlyReportSnapshotResponse200Headers
	// Headers429 the parsed response headers for an HTTP 429 response
	Headers429 *GetMonthlyReportSnapshotResponse429Headers
	// Headers503 the parsed response headers for an HTTP 503 response
	Headers503 *GetMonthlyReportSnapshotResponse503Headers
}

func ParseGetMonthlyReportSnapshotResponse

func ParseGetMonthlyReportSnapshotResponse(rsp *http.Response) (*GetMonthlyReportSnapshotResponse, error)

ParseGetMonthlyReportSnapshotResponse parses an HTTP response from a GetMonthlyReportSnapshotWithResponse call

func (GetMonthlyReportSnapshotResponse) ContentType

func (r GetMonthlyReportSnapshotResponse) ContentType() string

ContentType is a convenience method to retrieve the Content-Type value from the HTTP response headers

func (GetMonthlyReportSnapshotResponse) GetBody

func (r GetMonthlyReportSnapshotResponse) GetBody() []byte

GetBody returns the raw response body bytes

func (GetMonthlyReportSnapshotResponse) GetJSON200

func (r GetMonthlyReportSnapshotResponse) GetJSON200() *struct {
	Data   ReportSnapshot                                    `json:"data"`
	Meta   ResponseMeta                                      `json:"meta"`
	Object GetMonthlyReportSnapshot200JSONResponseBodyObject `json:"object"`
}

GetJSON200 returns the response for an HTTP 200 `application/json` response

func (GetMonthlyReportSnapshotResponse) GetJSON400

GetJSON400 returns the response for an HTTP 400 `application/json` response

func (GetMonthlyReportSnapshotResponse) GetJSON401

GetJSON401 returns the response for an HTTP 401 `application/json` response

func (GetMonthlyReportSnapshotResponse) GetJSON402

GetJSON402 returns the response for an HTTP 402 `application/json` response

func (GetMonthlyReportSnapshotResponse) GetJSON403

GetJSON403 returns the response for an HTTP 403 `application/json` response

func (GetMonthlyReportSnapshotResponse) GetJSON408 added in v0.2.0

GetJSON408 returns the response for an HTTP 408 `application/json` response

func (GetMonthlyReportSnapshotResponse) GetJSON423

GetJSON423 returns the response for an HTTP 423 `application/json` response

func (GetMonthlyReportSnapshotResponse) GetJSON429

GetJSON429 returns the response for an HTTP 429 `application/json` response

func (GetMonthlyReportSnapshotResponse) GetJSON500

GetJSON500 returns the response for an HTTP 500 `application/json` response

func (GetMonthlyReportSnapshotResponse) GetJSON503

GetJSON503 returns the response for an HTTP 503 `application/json` response

func (GetMonthlyReportSnapshotResponse) Status

Status returns HTTPResponse.Status

func (GetMonthlyReportSnapshotResponse) StatusCode

func (r GetMonthlyReportSnapshotResponse) StatusCode() int

StatusCode returns HTTPResponse.StatusCode

type GetMonthlyReportSnapshotResponse200Headers

type GetMonthlyReportSnapshotResponse200Headers struct {
	RateLimitLimit      *int
	RateLimitRemaining  *int
	RateLimitReset      *int
	ServerTiming        *string
	XEffectiveQuery     *string
	XQueryIgnored       *string
	XRateLimitLimit     *int
	XRateLimitRemaining *int
	XRateLimitReset     *int
	XRequestId          *string
	XUsageAccounting    *string
}

GetMonthlyReportSnapshotResponse200Headers the declared response headers of an HTTP 200 response for GetMonthlyReportSnapshot

type GetMonthlyReportSnapshotResponse429Headers

type GetMonthlyReportSnapshotResponse429Headers struct {
	RateLimitLimit      *int
	RateLimitRemaining  *int
	RateLimitReset      *int
	RetryAfter          *int
	XRateLimitLimit     *int
	XRateLimitRemaining *int
	XRateLimitReset     *int
	XRequestId          *string
}

GetMonthlyReportSnapshotResponse429Headers the declared response headers of an HTTP 429 response for GetMonthlyReportSnapshot

type GetMonthlyReportSnapshotResponse503Headers

type GetMonthlyReportSnapshotResponse503Headers struct {
	RetryAfter *int
	XRequestId *string
}

GetMonthlyReportSnapshotResponse503Headers the declared response headers of an HTTP 503 response for GetMonthlyReportSnapshot

type GetPickOfTheDay200JSONResponseBodyObject

type GetPickOfTheDay200JSONResponseBodyObject string

GetPickOfTheDay200JSONResponseBodyObject defines parameters for GetPickOfTheDay.

const (
	GetPickOfTheDay200JSONResponseBodyObjectPickOfTheDay GetPickOfTheDay200JSONResponseBodyObject = "pick_of_the_day"
)

Defines values for GetPickOfTheDay200JSONResponseBodyObject.

func (GetPickOfTheDay200JSONResponseBodyObject) Valid

Valid indicates whether the value is a known member of the GetPickOfTheDay200JSONResponseBodyObject enum.

type GetPickOfTheDayArchive200JSONResponseBodyObject

type GetPickOfTheDayArchive200JSONResponseBodyObject string

GetPickOfTheDayArchive200JSONResponseBodyObject defines parameters for GetPickOfTheDayArchive.

const (
	GetPickOfTheDayArchive200JSONResponseBodyObjectPickOfTheDayArchive GetPickOfTheDayArchive200JSONResponseBodyObject = "pick_of_the_day_archive"
)

Defines values for GetPickOfTheDayArchive200JSONResponseBodyObject.

func (GetPickOfTheDayArchive200JSONResponseBodyObject) Valid

Valid indicates whether the value is a known member of the GetPickOfTheDayArchive200JSONResponseBodyObject enum.

type GetPickOfTheDayArchiveParams

type GetPickOfTheDayArchiveParams struct {
	// XQueryValidation Opt into strict query-name validation. The default is compatible: unknown names are ignored and reported in X-Query-Ignored. With strict, an unknown name returns 400 bad_request with error.reason unknown_query_parameter before the handler runs, including when its percent escape is incomplete.
	XQueryValidation *GetPickOfTheDayArchiveParamsXQueryValidation `json:"X-Query-Validation,omitempty"`

	// IfNoneMatch Conditional GET validator from a previous ETag. Matching values return 304 Not Modified with an empty body.
	IfNoneMatch *string `json:"If-None-Match,omitempty"`
}

GetPickOfTheDayArchiveParams defines parameters for GetPickOfTheDayArchive.

type GetPickOfTheDayArchiveParamsXQueryValidation added in v0.3.0

type GetPickOfTheDayArchiveParamsXQueryValidation string

GetPickOfTheDayArchiveParamsXQueryValidation defines parameters for GetPickOfTheDayArchive.

const (
	GetPickOfTheDayArchiveParamsXQueryValidationStrict GetPickOfTheDayArchiveParamsXQueryValidation = "strict"
)

Defines values for GetPickOfTheDayArchiveParamsXQueryValidation.

func (GetPickOfTheDayArchiveParamsXQueryValidation) Valid added in v0.3.0

Valid indicates whether the value is a known member of the GetPickOfTheDayArchiveParamsXQueryValidation enum.

type GetPickOfTheDayArchiveResponse

type GetPickOfTheDayArchiveResponse struct {
	Body         []byte
	HTTPResponse *http.Response
	// JSON200 the response for an HTTP 200 `application/json` response
	JSON200 *struct {
		Data   PickOfTheDayArchive                             `json:"data"`
		Meta   ResponseMeta                                    `json:"meta"`
		Object GetPickOfTheDayArchive200JSONResponseBodyObject `json:"object"`
	}
	// JSON401 the response for an HTTP 401 `application/json` response
	JSON401 *ApiError
	// JSON402 the response for an HTTP 402 `application/json` response
	JSON402 *ApiError
	// JSON403 the response for an HTTP 403 `application/json` response
	JSON403 *ApiError
	// JSON408 the response for an HTTP 408 `application/json` response
	JSON408 *ApiError
	// JSON423 the response for an HTTP 423 `application/json` response
	JSON423 *ApiError
	// JSON429 the response for an HTTP 429 `application/json` response
	JSON429 *ApiError
	// JSON500 the response for an HTTP 500 `application/json` response
	JSON500 *ApiError
	// JSON503 the response for an HTTP 503 `application/json` response
	JSON503 *ApiError
	// Headers200 the parsed response headers for an HTTP 200 response
	Headers200 *GetPickOfTheDayArchiveResponse200Headers
	// Headers304 the parsed response headers for an HTTP 304 response
	Headers304 *GetPickOfTheDayArchiveResponse304Headers
	// Headers429 the parsed response headers for an HTTP 429 response
	Headers429 *GetPickOfTheDayArchiveResponse429Headers
	// Headers503 the parsed response headers for an HTTP 503 response
	Headers503 *GetPickOfTheDayArchiveResponse503Headers
}

func ParseGetPickOfTheDayArchiveResponse

func ParseGetPickOfTheDayArchiveResponse(rsp *http.Response) (*GetPickOfTheDayArchiveResponse, error)

ParseGetPickOfTheDayArchiveResponse parses an HTTP response from a GetPickOfTheDayArchiveWithResponse call

func (GetPickOfTheDayArchiveResponse) ContentType

func (r GetPickOfTheDayArchiveResponse) ContentType() string

ContentType is a convenience method to retrieve the Content-Type value from the HTTP response headers

func (GetPickOfTheDayArchiveResponse) GetBody

func (r GetPickOfTheDayArchiveResponse) GetBody() []byte

GetBody returns the raw response body bytes

func (GetPickOfTheDayArchiveResponse) GetJSON200

func (r GetPickOfTheDayArchiveResponse) GetJSON200() *struct {
	Data   PickOfTheDayArchive                             `json:"data"`
	Meta   ResponseMeta                                    `json:"meta"`
	Object GetPickOfTheDayArchive200JSONResponseBodyObject `json:"object"`
}

GetJSON200 returns the response for an HTTP 200 `application/json` response

func (GetPickOfTheDayArchiveResponse) GetJSON401

func (r GetPickOfTheDayArchiveResponse) GetJSON401() *ApiError

GetJSON401 returns the response for an HTTP 401 `application/json` response

func (GetPickOfTheDayArchiveResponse) GetJSON402

func (r GetPickOfTheDayArchiveResponse) GetJSON402() *ApiError

GetJSON402 returns the response for an HTTP 402 `application/json` response

func (GetPickOfTheDayArchiveResponse) GetJSON403

func (r GetPickOfTheDayArchiveResponse) GetJSON403() *ApiError

GetJSON403 returns the response for an HTTP 403 `application/json` response

func (GetPickOfTheDayArchiveResponse) GetJSON408 added in v0.2.0

func (r GetPickOfTheDayArchiveResponse) GetJSON408() *ApiError

GetJSON408 returns the response for an HTTP 408 `application/json` response

func (GetPickOfTheDayArchiveResponse) GetJSON423

func (r GetPickOfTheDayArchiveResponse) GetJSON423() *ApiError

GetJSON423 returns the response for an HTTP 423 `application/json` response

func (GetPickOfTheDayArchiveResponse) GetJSON429

func (r GetPickOfTheDayArchiveResponse) GetJSON429() *ApiError

GetJSON429 returns the response for an HTTP 429 `application/json` response

func (GetPickOfTheDayArchiveResponse) GetJSON500 added in v0.4.0

func (r GetPickOfTheDayArchiveResponse) GetJSON500() *ApiError

GetJSON500 returns the response for an HTTP 500 `application/json` response

func (GetPickOfTheDayArchiveResponse) GetJSON503

func (r GetPickOfTheDayArchiveResponse) GetJSON503() *ApiError

GetJSON503 returns the response for an HTTP 503 `application/json` response

func (GetPickOfTheDayArchiveResponse) Status

Status returns HTTPResponse.Status

func (GetPickOfTheDayArchiveResponse) StatusCode

func (r GetPickOfTheDayArchiveResponse) StatusCode() int

StatusCode returns HTTPResponse.StatusCode

type GetPickOfTheDayArchiveResponse200Headers

type GetPickOfTheDayArchiveResponse200Headers struct {
	ETag                *string
	RateLimitLimit      *int
	RateLimitRemaining  *int
	RateLimitReset      *int
	ServerTiming        *string
	XEffectiveQuery     *string
	XQueryIgnored       *string
	XRateLimitLimit     *int
	XRateLimitRemaining *int
	XRateLimitReset     *int
	XRequestId          *string
	XUsageAccounting    *string
}

GetPickOfTheDayArchiveResponse200Headers the declared response headers of an HTTP 200 response for GetPickOfTheDayArchive

type GetPickOfTheDayArchiveResponse304Headers

type GetPickOfTheDayArchiveResponse304Headers struct {
	ETag                *string
	RateLimitLimit      *int
	RateLimitRemaining  *int
	RateLimitReset      *int
	ServerTiming        *string
	XEffectiveQuery     *string
	XQueryIgnored       *string
	XRateLimitLimit     *int
	XRateLimitRemaining *int
	XRateLimitReset     *int
	XRequestId          *string
	XUsageAccounting    *string
}

GetPickOfTheDayArchiveResponse304Headers the declared response headers of an HTTP 304 response for GetPickOfTheDayArchive

type GetPickOfTheDayArchiveResponse429Headers

type GetPickOfTheDayArchiveResponse429Headers struct {
	RateLimitLimit      *int
	RateLimitRemaining  *int
	RateLimitReset      *int
	RetryAfter          *int
	XRateLimitLimit     *int
	XRateLimitRemaining *int
	XRateLimitReset     *int
	XRequestId          *string
}

GetPickOfTheDayArchiveResponse429Headers the declared response headers of an HTTP 429 response for GetPickOfTheDayArchive

type GetPickOfTheDayArchiveResponse503Headers

type GetPickOfTheDayArchiveResponse503Headers struct {
	RetryAfter *int
	XRequestId *string
}

GetPickOfTheDayArchiveResponse503Headers the declared response headers of an HTTP 503 response for GetPickOfTheDayArchive

type GetPickOfTheDayLedger200JSONResponseBodyObject added in v0.2.0

type GetPickOfTheDayLedger200JSONResponseBodyObject string

GetPickOfTheDayLedger200JSONResponseBodyObject defines parameters for GetPickOfTheDayLedger.

const (
	GetPickOfTheDayLedger200JSONResponseBodyObjectPickOfTheDayLedger GetPickOfTheDayLedger200JSONResponseBodyObject = "pick_of_the_day_ledger"
)

Defines values for GetPickOfTheDayLedger200JSONResponseBodyObject.

func (GetPickOfTheDayLedger200JSONResponseBodyObject) Valid added in v0.2.0

Valid indicates whether the value is a known member of the GetPickOfTheDayLedger200JSONResponseBodyObject enum.

type GetPickOfTheDayLedgerParams added in v0.2.0

type GetPickOfTheDayLedgerParams struct {
	// XQueryValidation Opt into strict query-name validation. The default is compatible: unknown names are ignored and reported in X-Query-Ignored. With strict, an unknown name returns 400 bad_request with error.reason unknown_query_parameter before the handler runs, including when its percent escape is incomplete.
	XQueryValidation *GetPickOfTheDayLedgerParamsXQueryValidation `json:"X-Query-Validation,omitempty"`

	// IfNoneMatch Conditional GET validator from a previous ETag. Matching values return 304 Not Modified with an empty body.
	IfNoneMatch *string `json:"If-None-Match,omitempty"`
}

GetPickOfTheDayLedgerParams defines parameters for GetPickOfTheDayLedger.

type GetPickOfTheDayLedgerParamsXQueryValidation added in v0.3.0

type GetPickOfTheDayLedgerParamsXQueryValidation string

GetPickOfTheDayLedgerParamsXQueryValidation defines parameters for GetPickOfTheDayLedger.

const (
	GetPickOfTheDayLedgerParamsXQueryValidationStrict GetPickOfTheDayLedgerParamsXQueryValidation = "strict"
)

Defines values for GetPickOfTheDayLedgerParamsXQueryValidation.

func (GetPickOfTheDayLedgerParamsXQueryValidation) Valid added in v0.3.0

Valid indicates whether the value is a known member of the GetPickOfTheDayLedgerParamsXQueryValidation enum.

type GetPickOfTheDayLedgerResponse added in v0.2.0

type GetPickOfTheDayLedgerResponse struct {
	Body         []byte
	HTTPResponse *http.Response
	// JSON200 the response for an HTTP 200 `application/json` response
	JSON200 *struct {
		// Data 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.
		Data   PickOfTheDayLedger                             `json:"data"`
		Meta   ResponseMeta                                   `json:"meta"`
		Object GetPickOfTheDayLedger200JSONResponseBodyObject `json:"object"`
	}
	// JSON408 the response for an HTTP 408 `application/json` response
	JSON408 *ApiError
	// JSON429 the response for an HTTP 429 `application/json` response
	JSON429 *ApiError
	// JSON500 the response for an HTTP 500 `application/json` response
	JSON500 *ApiError
	// JSON503 the response for an HTTP 503 `application/json` response
	JSON503 *ApiError
	// Headers200 the parsed response headers for an HTTP 200 response
	Headers200 *GetPickOfTheDayLedgerResponse200Headers
	// Headers304 the parsed response headers for an HTTP 304 response
	Headers304 *GetPickOfTheDayLedgerResponse304Headers
	// Headers429 the parsed response headers for an HTTP 429 response
	Headers429 *GetPickOfTheDayLedgerResponse429Headers
	// Headers503 the parsed response headers for an HTTP 503 response
	Headers503 *GetPickOfTheDayLedgerResponse503Headers
}

func ParseGetPickOfTheDayLedgerResponse added in v0.2.0

func ParseGetPickOfTheDayLedgerResponse(rsp *http.Response) (*GetPickOfTheDayLedgerResponse, error)

ParseGetPickOfTheDayLedgerResponse parses an HTTP response from a GetPickOfTheDayLedgerWithResponse call

func (GetPickOfTheDayLedgerResponse) ContentType added in v0.2.0

func (r GetPickOfTheDayLedgerResponse) ContentType() string

ContentType is a convenience method to retrieve the Content-Type value from the HTTP response headers

func (GetPickOfTheDayLedgerResponse) GetBody added in v0.2.0

func (r GetPickOfTheDayLedgerResponse) GetBody() []byte

GetBody returns the raw response body bytes

func (GetPickOfTheDayLedgerResponse) GetJSON200 added in v0.2.0

func (r GetPickOfTheDayLedgerResponse) GetJSON200() *struct {
	// Data 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.
	Data   PickOfTheDayLedger                             `json:"data"`
	Meta   ResponseMeta                                   `json:"meta"`
	Object GetPickOfTheDayLedger200JSONResponseBodyObject `json:"object"`
}

GetJSON200 returns the response for an HTTP 200 `application/json` response

func (GetPickOfTheDayLedgerResponse) GetJSON408 added in v0.2.0

func (r GetPickOfTheDayLedgerResponse) GetJSON408() *ApiError

GetJSON408 returns the response for an HTTP 408 `application/json` response

func (GetPickOfTheDayLedgerResponse) GetJSON429 added in v0.2.0

func (r GetPickOfTheDayLedgerResponse) GetJSON429() *ApiError

GetJSON429 returns the response for an HTTP 429 `application/json` response

func (GetPickOfTheDayLedgerResponse) GetJSON500 added in v0.4.0

func (r GetPickOfTheDayLedgerResponse) GetJSON500() *ApiError

GetJSON500 returns the response for an HTTP 500 `application/json` response

func (GetPickOfTheDayLedgerResponse) GetJSON503 added in v0.2.0

func (r GetPickOfTheDayLedgerResponse) GetJSON503() *ApiError

GetJSON503 returns the response for an HTTP 503 `application/json` response

func (GetPickOfTheDayLedgerResponse) Status added in v0.2.0

Status returns HTTPResponse.Status

func (GetPickOfTheDayLedgerResponse) StatusCode added in v0.2.0

func (r GetPickOfTheDayLedgerResponse) StatusCode() int

StatusCode returns HTTPResponse.StatusCode

type GetPickOfTheDayLedgerResponse200Headers added in v0.2.0

type GetPickOfTheDayLedgerResponse200Headers struct {
	ETag                *string
	RateLimitLimit      *int
	RateLimitRemaining  *int
	RateLimitReset      *int
	ServerTiming        *string
	XEffectiveQuery     *string
	XQueryIgnored       *string
	XRateLimitLimit     *int
	XRateLimitRemaining *int
	XRateLimitReset     *int
	XRequestId          *string
	XUsageAccounting    *string
}

GetPickOfTheDayLedgerResponse200Headers the declared response headers of an HTTP 200 response for GetPickOfTheDayLedger

type GetPickOfTheDayLedgerResponse304Headers added in v0.2.0

type GetPickOfTheDayLedgerResponse304Headers struct {
	ETag                *string
	RateLimitLimit      *int
	RateLimitRemaining  *int
	RateLimitReset      *int
	ServerTiming        *string
	XEffectiveQuery     *string
	XQueryIgnored       *string
	XRateLimitLimit     *int
	XRateLimitRemaining *int
	XRateLimitReset     *int
	XRequestId          *string
	XUsageAccounting    *string
}

GetPickOfTheDayLedgerResponse304Headers the declared response headers of an HTTP 304 response for GetPickOfTheDayLedger

type GetPickOfTheDayLedgerResponse429Headers added in v0.2.0

type GetPickOfTheDayLedgerResponse429Headers struct {
	RateLimitLimit      *int
	RateLimitRemaining  *int
	RateLimitReset      *int
	RetryAfter          *int
	XRateLimitLimit     *int
	XRateLimitRemaining *int
	XRateLimitReset     *int
	XRequestId          *string
}

GetPickOfTheDayLedgerResponse429Headers the declared response headers of an HTTP 429 response for GetPickOfTheDayLedger

type GetPickOfTheDayLedgerResponse503Headers added in v0.2.0

type GetPickOfTheDayLedgerResponse503Headers struct {
	RetryAfter *int
	XRequestId *string
}

GetPickOfTheDayLedgerResponse503Headers the declared response headers of an HTTP 503 response for GetPickOfTheDayLedger

type GetPickOfTheDayParams

type GetPickOfTheDayParams struct {
	// XQueryValidation Opt into strict query-name validation. The default is compatible: unknown names are ignored and reported in X-Query-Ignored. With strict, an unknown name returns 400 bad_request with error.reason unknown_query_parameter before the handler runs, including when its percent escape is incomplete.
	XQueryValidation *GetPickOfTheDayParamsXQueryValidation `json:"X-Query-Validation,omitempty"`

	// IfNoneMatch Conditional GET validator from a previous ETag. Matching values return 304 Not Modified with an empty body.
	IfNoneMatch *string `json:"If-None-Match,omitempty"`
}

GetPickOfTheDayParams defines parameters for GetPickOfTheDay.

type GetPickOfTheDayParamsXQueryValidation added in v0.3.0

type GetPickOfTheDayParamsXQueryValidation string

GetPickOfTheDayParamsXQueryValidation defines parameters for GetPickOfTheDay.

const (
	GetPickOfTheDayParamsXQueryValidationStrict GetPickOfTheDayParamsXQueryValidation = "strict"
)

Defines values for GetPickOfTheDayParamsXQueryValidation.

func (GetPickOfTheDayParamsXQueryValidation) Valid added in v0.3.0

Valid indicates whether the value is a known member of the GetPickOfTheDayParamsXQueryValidation enum.

type GetPickOfTheDayResponse

type GetPickOfTheDayResponse struct {
	Body         []byte
	HTTPResponse *http.Response
	// JSON200 the response for an HTTP 200 `application/json` response
	JSON200 *struct {
		Data   PickOfTheDay                             `json:"data"`
		Meta   ResponseMeta                             `json:"meta"`
		Object GetPickOfTheDay200JSONResponseBodyObject `json:"object"`
	}
	// JSON401 the response for an HTTP 401 `application/json` response
	JSON401 *ApiError
	// JSON402 the response for an HTTP 402 `application/json` response
	JSON402 *ApiError
	// JSON403 the response for an HTTP 403 `application/json` response
	JSON403 *ApiError
	// JSON404 the response for an HTTP 404 `application/json` response
	JSON404 *ApiError
	// JSON408 the response for an HTTP 408 `application/json` response
	JSON408 *ApiError
	// JSON423 the response for an HTTP 423 `application/json` response
	JSON423 *ApiError
	// JSON429 the response for an HTTP 429 `application/json` response
	JSON429 *ApiError
	// JSON500 the response for an HTTP 500 `application/json` response
	JSON500 *ApiError
	// JSON503 the response for an HTTP 503 `application/json` response
	JSON503 *ApiError
	// Headers200 the parsed response headers for an HTTP 200 response
	Headers200 *GetPickOfTheDayResponse200Headers
	// Headers304 the parsed response headers for an HTTP 304 response
	Headers304 *GetPickOfTheDayResponse304Headers
	// Headers404 the parsed response headers for an HTTP 404 response
	Headers404 *GetPickOfTheDayResponse404Headers
	// Headers429 the parsed response headers for an HTTP 429 response
	Headers429 *GetPickOfTheDayResponse429Headers
	// Headers503 the parsed response headers for an HTTP 503 response
	Headers503 *GetPickOfTheDayResponse503Headers
}

func ParseGetPickOfTheDayResponse

func ParseGetPickOfTheDayResponse(rsp *http.Response) (*GetPickOfTheDayResponse, error)

ParseGetPickOfTheDayResponse parses an HTTP response from a GetPickOfTheDayWithResponse call

func (GetPickOfTheDayResponse) ContentType

func (r GetPickOfTheDayResponse) ContentType() string

ContentType is a convenience method to retrieve the Content-Type value from the HTTP response headers

func (GetPickOfTheDayResponse) GetBody

func (r GetPickOfTheDayResponse) GetBody() []byte

GetBody returns the raw response body bytes

func (GetPickOfTheDayResponse) GetJSON200

func (r GetPickOfTheDayResponse) GetJSON200() *struct {
	Data   PickOfTheDay                             `json:"data"`
	Meta   ResponseMeta                             `json:"meta"`
	Object GetPickOfTheDay200JSONResponseBodyObject `json:"object"`
}

GetJSON200 returns the response for an HTTP 200 `application/json` response

func (GetPickOfTheDayResponse) GetJSON401

func (r GetPickOfTheDayResponse) GetJSON401() *ApiError

GetJSON401 returns the response for an HTTP 401 `application/json` response

func (GetPickOfTheDayResponse) GetJSON402

func (r GetPickOfTheDayResponse) GetJSON402() *ApiError

GetJSON402 returns the response for an HTTP 402 `application/json` response

func (GetPickOfTheDayResponse) GetJSON403

func (r GetPickOfTheDayResponse) GetJSON403() *ApiError

GetJSON403 returns the response for an HTTP 403 `application/json` response

func (GetPickOfTheDayResponse) GetJSON404

func (r GetPickOfTheDayResponse) GetJSON404() *ApiError

GetJSON404 returns the response for an HTTP 404 `application/json` response

func (GetPickOfTheDayResponse) GetJSON408 added in v0.2.0

func (r GetPickOfTheDayResponse) GetJSON408() *ApiError

GetJSON408 returns the response for an HTTP 408 `application/json` response

func (GetPickOfTheDayResponse) GetJSON423

func (r GetPickOfTheDayResponse) GetJSON423() *ApiError

GetJSON423 returns the response for an HTTP 423 `application/json` response

func (GetPickOfTheDayResponse) GetJSON429

func (r GetPickOfTheDayResponse) GetJSON429() *ApiError

GetJSON429 returns the response for an HTTP 429 `application/json` response

func (GetPickOfTheDayResponse) GetJSON500 added in v0.4.0

func (r GetPickOfTheDayResponse) GetJSON500() *ApiError

GetJSON500 returns the response for an HTTP 500 `application/json` response

func (GetPickOfTheDayResponse) GetJSON503

func (r GetPickOfTheDayResponse) GetJSON503() *ApiError

GetJSON503 returns the response for an HTTP 503 `application/json` response

func (GetPickOfTheDayResponse) Status

func (r GetPickOfTheDayResponse) Status() string

Status returns HTTPResponse.Status

func (GetPickOfTheDayResponse) StatusCode

func (r GetPickOfTheDayResponse) StatusCode() int

StatusCode returns HTTPResponse.StatusCode

type GetPickOfTheDayResponse200Headers

type GetPickOfTheDayResponse200Headers struct {
	ETag                *string
	RateLimitLimit      *int
	RateLimitRemaining  *int
	RateLimitReset      *int
	ServerTiming        *string
	XEffectiveQuery     *string
	XQueryIgnored       *string
	XRateLimitLimit     *int
	XRateLimitRemaining *int
	XRateLimitReset     *int
	XRequestId          *string
	XUsageAccounting    *string
}

GetPickOfTheDayResponse200Headers the declared response headers of an HTTP 200 response for GetPickOfTheDay

type GetPickOfTheDayResponse304Headers

type GetPickOfTheDayResponse304Headers struct {
	ETag                *string
	RateLimitLimit      *int
	RateLimitRemaining  *int
	RateLimitReset      *int
	ServerTiming        *string
	XEffectiveQuery     *string
	XQueryIgnored       *string
	XRateLimitLimit     *int
	XRateLimitRemaining *int
	XRateLimitReset     *int
	XRequestId          *string
	XUsageAccounting    *string
}

GetPickOfTheDayResponse304Headers the declared response headers of an HTTP 304 response for GetPickOfTheDay

type GetPickOfTheDayResponse404Headers

type GetPickOfTheDayResponse404Headers struct {
	RetryAfter *int
}

GetPickOfTheDayResponse404Headers the declared response headers of an HTTP 404 response for GetPickOfTheDay

type GetPickOfTheDayResponse429Headers

type GetPickOfTheDayResponse429Headers struct {
	RateLimitLimit      *int
	RateLimitRemaining  *int
	RateLimitReset      *int
	RetryAfter          *int
	XRateLimitLimit     *int
	XRateLimitRemaining *int
	XRateLimitReset     *int
	XRequestId          *string
}

GetPickOfTheDayResponse429Headers the declared response headers of an HTTP 429 response for GetPickOfTheDay

type GetPickOfTheDayResponse503Headers

type GetPickOfTheDayResponse503Headers struct {
	RetryAfter *int
	XRequestId *string
}

GetPickOfTheDayResponse503Headers the declared response headers of an HTTP 503 response for GetPickOfTheDay

type GetPlatforms200JSONResponseBodyObject

type GetPlatforms200JSONResponseBodyObject string

GetPlatforms200JSONResponseBodyObject defines parameters for GetPlatforms.

const (
	GetPlatforms200JSONResponseBodyObjectPlatforms GetPlatforms200JSONResponseBodyObject = "platforms"
)

Defines values for GetPlatforms200JSONResponseBodyObject.

func (GetPlatforms200JSONResponseBodyObject) Valid

Valid indicates whether the value is a known member of the GetPlatforms200JSONResponseBodyObject enum.

type GetPlatformsParams added in v0.3.0

type GetPlatformsParams struct {
	// XQueryValidation Opt into strict query-name validation. The default is compatible: unknown names are ignored and reported in X-Query-Ignored. With strict, an unknown name returns 400 bad_request with error.reason unknown_query_parameter before the handler runs, including when its percent escape is incomplete.
	XQueryValidation *GetPlatformsParamsXQueryValidation `json:"X-Query-Validation,omitempty"`
}

GetPlatformsParams defines parameters for GetPlatforms.

type GetPlatformsParamsXQueryValidation added in v0.3.0

type GetPlatformsParamsXQueryValidation string

GetPlatformsParamsXQueryValidation defines parameters for GetPlatforms.

const (
	GetPlatformsParamsXQueryValidationStrict GetPlatformsParamsXQueryValidation = "strict"
)

Defines values for GetPlatformsParamsXQueryValidation.

func (GetPlatformsParamsXQueryValidation) Valid added in v0.3.0

Valid indicates whether the value is a known member of the GetPlatformsParamsXQueryValidation enum.

type GetPlatformsResponse

type GetPlatformsResponse struct {
	Body         []byte
	HTTPResponse *http.Response
	// JSON200 the response for an HTTP 200 `application/json` response
	JSON200 *struct {
		Data   Platforms                             `json:"data"`
		Meta   ResponseMeta                          `json:"meta"`
		Object GetPlatforms200JSONResponseBodyObject `json:"object"`
	}
	// JSON408 the response for an HTTP 408 `application/json` response
	JSON408 *ApiError
	// JSON429 the response for an HTTP 429 `application/json` response
	JSON429 *ApiError
	// JSON500 the response for an HTTP 500 `application/json` response
	JSON500 *ApiError
	// Headers200 the parsed response headers for an HTTP 200 response
	Headers200 *GetPlatformsResponse200Headers
	// Headers429 the parsed response headers for an HTTP 429 response
	Headers429 *GetPlatformsResponse429Headers
}

func ParseGetPlatformsResponse

func ParseGetPlatformsResponse(rsp *http.Response) (*GetPlatformsResponse, error)

ParseGetPlatformsResponse parses an HTTP response from a GetPlatformsWithResponse call

func (GetPlatformsResponse) ContentType

func (r GetPlatformsResponse) ContentType() string

ContentType is a convenience method to retrieve the Content-Type value from the HTTP response headers

func (GetPlatformsResponse) GetBody

func (r GetPlatformsResponse) GetBody() []byte

GetBody returns the raw response body bytes

func (GetPlatformsResponse) GetJSON200

func (r GetPlatformsResponse) GetJSON200() *struct {
	Data   Platforms                             `json:"data"`
	Meta   ResponseMeta                          `json:"meta"`
	Object GetPlatforms200JSONResponseBodyObject `json:"object"`
}

GetJSON200 returns the response for an HTTP 200 `application/json` response

func (GetPlatformsResponse) GetJSON408 added in v0.2.0

func (r GetPlatformsResponse) GetJSON408() *ApiError

GetJSON408 returns the response for an HTTP 408 `application/json` response

func (GetPlatformsResponse) GetJSON429

func (r GetPlatformsResponse) GetJSON429() *ApiError

GetJSON429 returns the response for an HTTP 429 `application/json` response

func (GetPlatformsResponse) GetJSON500

func (r GetPlatformsResponse) GetJSON500() *ApiError

GetJSON500 returns the response for an HTTP 500 `application/json` response

func (GetPlatformsResponse) Status

func (r GetPlatformsResponse) Status() string

Status returns HTTPResponse.Status

func (GetPlatformsResponse) StatusCode

func (r GetPlatformsResponse) StatusCode() int

StatusCode returns HTTPResponse.StatusCode

type GetPlatformsResponse200Headers added in v0.2.0

type GetPlatformsResponse200Headers struct {
	RateLimitLimit      *int
	RateLimitRemaining  *int
	RateLimitReset      *int
	ServerTiming        *string
	XEffectiveQuery     *string
	XQueryIgnored       *string
	XRateLimitLimit     *int
	XRateLimitRemaining *int
	XRateLimitReset     *int
}

GetPlatformsResponse200Headers the declared response headers of an HTTP 200 response for GetPlatforms

type GetPlatformsResponse429Headers

type GetPlatformsResponse429Headers struct {
	RateLimitLimit      *int
	RateLimitRemaining  *int
	RateLimitReset      *int
	RetryAfter          *int
	XRateLimitLimit     *int
	XRateLimitRemaining *int
	XRateLimitReset     *int
	XRequestId          *string
}

GetPlatformsResponse429Headers the declared response headers of an HTTP 429 response for GetPlatforms

type GetPositionTimeline200JSONResponseBodyObject

type GetPositionTimeline200JSONResponseBodyObject string

GetPositionTimeline200JSONResponseBodyObject defines parameters for GetPositionTimeline.

const (
	GetPositionTimeline200JSONResponseBodyObjectList GetPositionTimeline200JSONResponseBodyObject = "list"
)

Defines values for GetPositionTimeline200JSONResponseBodyObject.

func (GetPositionTimeline200JSONResponseBodyObject) Valid

Valid indicates whether the value is a known member of the GetPositionTimeline200JSONResponseBodyObject enum.

type GetPositionTimelineById200JSONResponseBodyObject

type GetPositionTimelineById200JSONResponseBodyObject string

GetPositionTimelineById200JSONResponseBodyObject defines parameters for GetPositionTimelineById.

const (
	GetPositionTimelineById200JSONResponseBodyObjectList GetPositionTimelineById200JSONResponseBodyObject = "list"
)

Defines values for GetPositionTimelineById200JSONResponseBodyObject.

func (GetPositionTimelineById200JSONResponseBodyObject) Valid

Valid indicates whether the value is a known member of the GetPositionTimelineById200JSONResponseBodyObject enum.

type GetPositionTimelineByIdParams

type GetPositionTimelineByIdParams struct {
	// ConditionId Market condition_id. One timeline per (trader, market).
	ConditionId string `form:"condition_id" json:"condition_id"`

	// Limit Maximum number of timeline events to return. Out-of-range values are clamped to 1..100.
	Limit *int `form:"limit,omitempty" json:"limit,omitempty"`

	// Cursor Pagination cursor from previous response's next_cursor.
	Cursor *string `form:"cursor,omitempty" json:"cursor,omitempty"`

	// XQueryValidation Opt into strict query-name validation. The default is compatible: unknown names are ignored and reported in X-Query-Ignored. With strict, an unknown name returns 400 bad_request with error.reason unknown_query_parameter before the handler runs, including when its percent escape is incomplete.
	XQueryValidation *GetPositionTimelineByIdParamsXQueryValidation `json:"X-Query-Validation,omitempty"`

	// IfNoneMatch Conditional GET validator from a previous ETag. Matching values return 304 Not Modified with an empty body.
	IfNoneMatch *string `json:"If-None-Match,omitempty"`
}

GetPositionTimelineByIdParams defines parameters for GetPositionTimelineById.

type GetPositionTimelineByIdParamsXQueryValidation added in v0.3.0

type GetPositionTimelineByIdParamsXQueryValidation string

GetPositionTimelineByIdParamsXQueryValidation defines parameters for GetPositionTimelineById.

const (
	GetPositionTimelineByIdParamsXQueryValidationStrict GetPositionTimelineByIdParamsXQueryValidation = "strict"
)

Defines values for GetPositionTimelineByIdParamsXQueryValidation.

func (GetPositionTimelineByIdParamsXQueryValidation) Valid added in v0.3.0

Valid indicates whether the value is a known member of the GetPositionTimelineByIdParamsXQueryValidation enum.

type GetPositionTimelineByIdResponse

type GetPositionTimelineByIdResponse struct {
	Body         []byte
	HTTPResponse *http.Response
	// JSON200 the response for an HTTP 200 `application/json` response
	JSON200 *struct {
		Data       []PositionTimelineEvent                          `json:"data"`
		HasMore    bool                                             `json:"has_more"`
		Meta       ResponseMeta                                     `json:"meta"`
		NextCursor *string                                          `json:"next_cursor,omitempty"`
		Object     GetPositionTimelineById200JSONResponseBodyObject `json:"object"`

		// Total Total matching rows when the read model exposes a count; the key is absent when it does not.
		Total *int `json:"total,omitempty"`
	}
	// JSON400 the response for an HTTP 400 `application/json` response
	JSON400 *ApiError
	// JSON401 the response for an HTTP 401 `application/json` response
	JSON401 *ApiError
	// JSON402 the response for an HTTP 402 `application/json` response
	JSON402 *ApiError
	// JSON403 the response for an HTTP 403 `application/json` response
	JSON403 *ApiError
	// JSON404 the response for an HTTP 404 `application/json` response
	JSON404 *ApiError
	// JSON408 the response for an HTTP 408 `application/json` response
	JSON408 *ApiError
	// JSON423 the response for an HTTP 423 `application/json` response
	JSON423 *ApiError
	// JSON429 the response for an HTTP 429 `application/json` response
	JSON429 *ApiError
	// JSON500 the response for an HTTP 500 `application/json` response
	JSON500 *ApiError
	// JSON503 the response for an HTTP 503 `application/json` response
	JSON503 *ApiError
	// Headers200 the parsed response headers for an HTTP 200 response
	Headers200 *GetPositionTimelineByIdResponse200Headers
	// Headers304 the parsed response headers for an HTTP 304 response
	Headers304 *GetPositionTimelineByIdResponse304Headers
	// Headers429 the parsed response headers for an HTTP 429 response
	Headers429 *GetPositionTimelineByIdResponse429Headers
	// Headers503 the parsed response headers for an HTTP 503 response
	Headers503 *GetPositionTimelineByIdResponse503Headers
}

func ParseGetPositionTimelineByIdResponse

func ParseGetPositionTimelineByIdResponse(rsp *http.Response) (*GetPositionTimelineByIdResponse, error)

ParseGetPositionTimelineByIdResponse parses an HTTP response from a GetPositionTimelineByIdWithResponse call

func (GetPositionTimelineByIdResponse) ContentType

func (r GetPositionTimelineByIdResponse) ContentType() string

ContentType is a convenience method to retrieve the Content-Type value from the HTTP response headers

func (GetPositionTimelineByIdResponse) GetBody

func (r GetPositionTimelineByIdResponse) GetBody() []byte

GetBody returns the raw response body bytes

func (GetPositionTimelineByIdResponse) GetJSON200

func (r GetPositionTimelineByIdResponse) GetJSON200() *struct {
	Data       []PositionTimelineEvent                          `json:"data"`
	HasMore    bool                                             `json:"has_more"`
	Meta       ResponseMeta                                     `json:"meta"`
	NextCursor *string                                          `json:"next_cursor,omitempty"`
	Object     GetPositionTimelineById200JSONResponseBodyObject `json:"object"`

	// Total Total matching rows when the read model exposes a count; the key is absent when it does not.
	Total *int `json:"total,omitempty"`
}

GetJSON200 returns the response for an HTTP 200 `application/json` response

func (GetPositionTimelineByIdResponse) GetJSON400

func (r GetPositionTimelineByIdResponse) GetJSON400() *ApiError

GetJSON400 returns the response for an HTTP 400 `application/json` response

func (GetPositionTimelineByIdResponse) GetJSON401

func (r GetPositionTimelineByIdResponse) GetJSON401() *ApiError

GetJSON401 returns the response for an HTTP 401 `application/json` response

func (GetPositionTimelineByIdResponse) GetJSON402

func (r GetPositionTimelineByIdResponse) GetJSON402() *ApiError

GetJSON402 returns the response for an HTTP 402 `application/json` response

func (GetPositionTimelineByIdResponse) GetJSON403

func (r GetPositionTimelineByIdResponse) GetJSON403() *ApiError

GetJSON403 returns the response for an HTTP 403 `application/json` response

func (GetPositionTimelineByIdResponse) GetJSON404

func (r GetPositionTimelineByIdResponse) GetJSON404() *ApiError

GetJSON404 returns the response for an HTTP 404 `application/json` response

func (GetPositionTimelineByIdResponse) GetJSON408 added in v0.2.0

func (r GetPositionTimelineByIdResponse) GetJSON408() *ApiError

GetJSON408 returns the response for an HTTP 408 `application/json` response

func (GetPositionTimelineByIdResponse) GetJSON423

func (r GetPositionTimelineByIdResponse) GetJSON423() *ApiError

GetJSON423 returns the response for an HTTP 423 `application/json` response

func (GetPositionTimelineByIdResponse) GetJSON429

func (r GetPositionTimelineByIdResponse) GetJSON429() *ApiError

GetJSON429 returns the response for an HTTP 429 `application/json` response

func (GetPositionTimelineByIdResponse) GetJSON500

func (r GetPositionTimelineByIdResponse) GetJSON500() *ApiError

GetJSON500 returns the response for an HTTP 500 `application/json` response

func (GetPositionTimelineByIdResponse) GetJSON503

func (r GetPositionTimelineByIdResponse) GetJSON503() *ApiError

GetJSON503 returns the response for an HTTP 503 `application/json` response

func (GetPositionTimelineByIdResponse) Status

Status returns HTTPResponse.Status

func (GetPositionTimelineByIdResponse) StatusCode

func (r GetPositionTimelineByIdResponse) StatusCode() int

StatusCode returns HTTPResponse.StatusCode

type GetPositionTimelineByIdResponse200Headers

type GetPositionTimelineByIdResponse200Headers struct {
	ETag                *string
	RateLimitLimit      *int
	RateLimitRemaining  *int
	RateLimitReset      *int
	ServerTiming        *string
	XEffectiveQuery     *string
	XQueryIgnored       *string
	XRateLimitLimit     *int
	XRateLimitRemaining *int
	XRateLimitReset     *int
	XRequestId          *string
	XUsageAccounting    *string
}

GetPositionTimelineByIdResponse200Headers the declared response headers of an HTTP 200 response for GetPositionTimelineById

type GetPositionTimelineByIdResponse304Headers

type GetPositionTimelineByIdResponse304Headers struct {
	ETag                *string
	RateLimitLimit      *int
	RateLimitRemaining  *int
	RateLimitReset      *int
	ServerTiming        *string
	XEffectiveQuery     *string
	XQueryIgnored       *string
	XRateLimitLimit     *int
	XRateLimitRemaining *int
	XRateLimitReset     *int
	XRequestId          *string
	XUsageAccounting    *string
}

GetPositionTimelineByIdResponse304Headers the declared response headers of an HTTP 304 response for GetPositionTimelineById

type GetPositionTimelineByIdResponse429Headers

type GetPositionTimelineByIdResponse429Headers struct {
	RateLimitLimit      *int
	RateLimitRemaining  *int
	RateLimitReset      *int
	RetryAfter          *int
	XRateLimitLimit     *int
	XRateLimitRemaining *int
	XRateLimitReset     *int
	XRequestId          *string
}

GetPositionTimelineByIdResponse429Headers the declared response headers of an HTTP 429 response for GetPositionTimelineById

type GetPositionTimelineByIdResponse503Headers

type GetPositionTimelineByIdResponse503Headers struct {
	RetryAfter *int
	XRequestId *string
}

GetPositionTimelineByIdResponse503Headers the declared response headers of an HTTP 503 response for GetPositionTimelineById

type GetPositionTimelineParams

type GetPositionTimelineParams struct {
	// ConditionId Market condition_id. One timeline per (trader, market).
	ConditionId string `form:"condition_id" json:"condition_id"`

	// Limit Maximum number of timeline events to return. Out-of-range values are clamped to 1..100.
	Limit *int `form:"limit,omitempty" json:"limit,omitempty"`

	// Cursor Pagination cursor from previous response's next_cursor.
	Cursor *string `form:"cursor,omitempty" json:"cursor,omitempty"`

	// XQueryValidation Opt into strict query-name validation. The default is compatible: unknown names are ignored and reported in X-Query-Ignored. With strict, an unknown name returns 400 bad_request with error.reason unknown_query_parameter before the handler runs, including when its percent escape is incomplete.
	XQueryValidation *GetPositionTimelineParamsXQueryValidation `json:"X-Query-Validation,omitempty"`

	// IfNoneMatch Conditional GET validator from a previous ETag. Matching values return 304 Not Modified with an empty body.
	IfNoneMatch *string `json:"If-None-Match,omitempty"`
}

GetPositionTimelineParams defines parameters for GetPositionTimeline.

type GetPositionTimelineParamsXQueryValidation added in v0.3.0

type GetPositionTimelineParamsXQueryValidation string

GetPositionTimelineParamsXQueryValidation defines parameters for GetPositionTimeline.

const (
	GetPositionTimelineParamsXQueryValidationStrict GetPositionTimelineParamsXQueryValidation = "strict"
)

Defines values for GetPositionTimelineParamsXQueryValidation.

func (GetPositionTimelineParamsXQueryValidation) Valid added in v0.3.0

Valid indicates whether the value is a known member of the GetPositionTimelineParamsXQueryValidation enum.

type GetPositionTimelineResponse

type GetPositionTimelineResponse struct {
	Body         []byte
	HTTPResponse *http.Response
	// JSON200 the response for an HTTP 200 `application/json` response
	JSON200 *struct {
		Data       []PositionTimelineEvent                      `json:"data"`
		HasMore    bool                                         `json:"has_more"`
		Meta       ResponseMeta                                 `json:"meta"`
		NextCursor *string                                      `json:"next_cursor,omitempty"`
		Object     GetPositionTimeline200JSONResponseBodyObject `json:"object"`

		// Total Total matching rows when the read model exposes a count; the key is absent when it does not.
		Total *int `json:"total,omitempty"`
	}
	// JSON400 the response for an HTTP 400 `application/json` response
	JSON400 *ApiError
	// JSON401 the response for an HTTP 401 `application/json` response
	JSON401 *ApiError
	// JSON402 the response for an HTTP 402 `application/json` response
	JSON402 *ApiError
	// JSON403 the response for an HTTP 403 `application/json` response
	JSON403 *ApiError
	// JSON404 the response for an HTTP 404 `application/json` response
	JSON404 *ApiError
	// JSON408 the response for an HTTP 408 `application/json` response
	JSON408 *ApiError
	// JSON423 the response for an HTTP 423 `application/json` response
	JSON423 *ApiError
	// JSON429 the response for an HTTP 429 `application/json` response
	JSON429 *ApiError
	// JSON500 the response for an HTTP 500 `application/json` response
	JSON500 *ApiError
	// JSON503 the response for an HTTP 503 `application/json` response
	JSON503 *ApiError
	// Headers200 the parsed response headers for an HTTP 200 response
	Headers200 *GetPositionTimelineResponse200Headers
	// Headers304 the parsed response headers for an HTTP 304 response
	Headers304 *GetPositionTimelineResponse304Headers
	// Headers429 the parsed response headers for an HTTP 429 response
	Headers429 *GetPositionTimelineResponse429Headers
	// Headers503 the parsed response headers for an HTTP 503 response
	Headers503 *GetPositionTimelineResponse503Headers
}

func ParseGetPositionTimelineResponse

func ParseGetPositionTimelineResponse(rsp *http.Response) (*GetPositionTimelineResponse, error)

ParseGetPositionTimelineResponse parses an HTTP response from a GetPositionTimelineWithResponse call

func (GetPositionTimelineResponse) ContentType

func (r GetPositionTimelineResponse) ContentType() string

ContentType is a convenience method to retrieve the Content-Type value from the HTTP response headers

func (GetPositionTimelineResponse) GetBody

func (r GetPositionTimelineResponse) GetBody() []byte

GetBody returns the raw response body bytes

func (GetPositionTimelineResponse) GetJSON200

func (r GetPositionTimelineResponse) GetJSON200() *struct {
	Data       []PositionTimelineEvent                      `json:"data"`
	HasMore    bool                                         `json:"has_more"`
	Meta       ResponseMeta                                 `json:"meta"`
	NextCursor *string                                      `json:"next_cursor,omitempty"`
	Object     GetPositionTimeline200JSONResponseBodyObject `json:"object"`

	// Total Total matching rows when the read model exposes a count; the key is absent when it does not.
	Total *int `json:"total,omitempty"`
}

GetJSON200 returns the response for an HTTP 200 `application/json` response

func (GetPositionTimelineResponse) GetJSON400

func (r GetPositionTimelineResponse) GetJSON400() *ApiError

GetJSON400 returns the response for an HTTP 400 `application/json` response

func (GetPositionTimelineResponse) GetJSON401

func (r GetPositionTimelineResponse) GetJSON401() *ApiError

GetJSON401 returns the response for an HTTP 401 `application/json` response

func (GetPositionTimelineResponse) GetJSON402

func (r GetPositionTimelineResponse) GetJSON402() *ApiError

GetJSON402 returns the response for an HTTP 402 `application/json` response

func (GetPositionTimelineResponse) GetJSON403

func (r GetPositionTimelineResponse) GetJSON403() *ApiError

GetJSON403 returns the response for an HTTP 403 `application/json` response

func (GetPositionTimelineResponse) GetJSON404

func (r GetPositionTimelineResponse) GetJSON404() *ApiError

GetJSON404 returns the response for an HTTP 404 `application/json` response

func (GetPositionTimelineResponse) GetJSON408 added in v0.2.0

func (r GetPositionTimelineResponse) GetJSON408() *ApiError

GetJSON408 returns the response for an HTTP 408 `application/json` response

func (GetPositionTimelineResponse) GetJSON423

func (r GetPositionTimelineResponse) GetJSON423() *ApiError

GetJSON423 returns the response for an HTTP 423 `application/json` response

func (GetPositionTimelineResponse) GetJSON429

func (r GetPositionTimelineResponse) GetJSON429() *ApiError

GetJSON429 returns the response for an HTTP 429 `application/json` response

func (GetPositionTimelineResponse) GetJSON500

func (r GetPositionTimelineResponse) GetJSON500() *ApiError

GetJSON500 returns the response for an HTTP 500 `application/json` response

func (GetPositionTimelineResponse) GetJSON503

func (r GetPositionTimelineResponse) GetJSON503() *ApiError

GetJSON503 returns the response for an HTTP 503 `application/json` response

func (GetPositionTimelineResponse) Status

Status returns HTTPResponse.Status

func (GetPositionTimelineResponse) StatusCode

func (r GetPositionTimelineResponse) StatusCode() int

StatusCode returns HTTPResponse.StatusCode

type GetPositionTimelineResponse200Headers

type GetPositionTimelineResponse200Headers struct {
	ETag                *string
	RateLimitLimit      *int
	RateLimitRemaining  *int
	RateLimitReset      *int
	ServerTiming        *string
	XEffectiveQuery     *string
	XQueryIgnored       *string
	XRateLimitLimit     *int
	XRateLimitRemaining *int
	XRateLimitReset     *int
	XRequestId          *string
	XUsageAccounting    *string
}

GetPositionTimelineResponse200Headers the declared response headers of an HTTP 200 response for GetPositionTimeline

type GetPositionTimelineResponse304Headers

type GetPositionTimelineResponse304Headers struct {
	ETag                *string
	RateLimitLimit      *int
	RateLimitRemaining  *int
	RateLimitReset      *int
	ServerTiming        *string
	XEffectiveQuery     *string
	XQueryIgnored       *string
	XRateLimitLimit     *int
	XRateLimitRemaining *int
	XRateLimitReset     *int
	XRequestId          *string
	XUsageAccounting    *string
}

GetPositionTimelineResponse304Headers the declared response headers of an HTTP 304 response for GetPositionTimeline

type GetPositionTimelineResponse429Headers

type GetPositionTimelineResponse429Headers struct {
	RateLimitLimit      *int
	RateLimitRemaining  *int
	RateLimitReset      *int
	RetryAfter          *int
	XRateLimitLimit     *int
	XRateLimitRemaining *int
	XRateLimitReset     *int
	XRequestId          *string
}

GetPositionTimelineResponse429Headers the declared response headers of an HTTP 429 response for GetPositionTimeline

type GetPositionTimelineResponse503Headers

type GetPositionTimelineResponse503Headers struct {
	RetryAfter *int
	XRequestId *string
}

GetPositionTimelineResponse503Headers the declared response headers of an HTTP 503 response for GetPositionTimeline

type GetReports200JSONResponseBodyObject

type GetReports200JSONResponseBodyObject string

GetReports200JSONResponseBodyObject defines parameters for GetReports.

const (
	GetReports200JSONResponseBodyObjectReportSnapshot GetReports200JSONResponseBodyObject = "report_snapshot"
)

Defines values for GetReports200JSONResponseBodyObject.

func (GetReports200JSONResponseBodyObject) Valid

Valid indicates whether the value is a known member of the GetReports200JSONResponseBodyObject enum.

type GetReportsParams

type GetReportsParams struct {
	// Granularity Report granularity selector.
	Granularity GetReportsParamsGranularity `form:"granularity" json:"granularity"`

	// Period Period token for the granularity. daily: UTC date YYYY-MM-DD. weekly: ISO week YYYY-WW for a durable canonical snapshot, or a from,to YYYY-MM-DD pair for an exact ephemeral range limited to 31 inclusive UTC days. A wider explicit range returns 400 invalid_query. monthly: UTC month YYYY-MM. A period that ends before 2024-03-01, the first day report data covers, or starts after tomorrow UTC returns 400 bad_request with error.param=period.
	Period string `form:"period" json:"period"`

	// XQueryValidation Opt into strict query-name validation. The default is compatible: unknown names are ignored and reported in X-Query-Ignored. With strict, an unknown name returns 400 bad_request with error.reason unknown_query_parameter before the handler runs, including when its percent escape is incomplete.
	XQueryValidation *GetReportsParamsXQueryValidation `json:"X-Query-Validation,omitempty"`
}

GetReportsParams defines parameters for GetReports.

type GetReportsParamsGranularity

type GetReportsParamsGranularity string

GetReportsParamsGranularity defines parameters for GetReports.

const (
	GetReportsParamsGranularityDaily   GetReportsParamsGranularity = "daily"
	GetReportsParamsGranularityMonthly GetReportsParamsGranularity = "monthly"
	GetReportsParamsGranularityWeekly  GetReportsParamsGranularity = "weekly"
)

Defines values for GetReportsParamsGranularity.

func (GetReportsParamsGranularity) Valid

Valid indicates whether the value is a known member of the GetReportsParamsGranularity enum.

type GetReportsParamsXQueryValidation added in v0.3.0

type GetReportsParamsXQueryValidation string

GetReportsParamsXQueryValidation defines parameters for GetReports.

const (
	GetReportsParamsXQueryValidationStrict GetReportsParamsXQueryValidation = "strict"
)

Defines values for GetReportsParamsXQueryValidation.

func (GetReportsParamsXQueryValidation) Valid added in v0.3.0

Valid indicates whether the value is a known member of the GetReportsParamsXQueryValidation enum.

type GetReportsResponse

type GetReportsResponse struct {
	Body         []byte
	HTTPResponse *http.Response
	// JSON200 the response for an HTTP 200 `application/json` response
	JSON200 *struct {
		Data   ReportSnapshot                      `json:"data"`
		Meta   ResponseMeta                        `json:"meta"`
		Object GetReports200JSONResponseBodyObject `json:"object"`
	}
	// JSON400 the response for an HTTP 400 `application/json` response
	JSON400 *ApiError
	// JSON401 the response for an HTTP 401 `application/json` response
	JSON401 *ApiError
	// JSON402 the response for an HTTP 402 `application/json` response
	JSON402 *ApiError
	// JSON403 the response for an HTTP 403 `application/json` response
	JSON403 *ApiError
	// JSON408 the response for an HTTP 408 `application/json` response
	JSON408 *ApiError
	// JSON423 the response for an HTTP 423 `application/json` response
	JSON423 *ApiError
	// JSON429 the response for an HTTP 429 `application/json` response
	JSON429 *ApiError
	// JSON500 the response for an HTTP 500 `application/json` response
	JSON500 *ApiError
	// JSON503 the response for an HTTP 503 `application/json` response
	JSON503 *ApiError
	// Headers200 the parsed response headers for an HTTP 200 response
	Headers200 *GetReportsResponse200Headers
	// Headers429 the parsed response headers for an HTTP 429 response
	Headers429 *GetReportsResponse429Headers
	// Headers503 the parsed response headers for an HTTP 503 response
	Headers503 *GetReportsResponse503Headers
}

func ParseGetReportsResponse

func ParseGetReportsResponse(rsp *http.Response) (*GetReportsResponse, error)

ParseGetReportsResponse parses an HTTP response from a GetReportsWithResponse call

func (GetReportsResponse) ContentType

func (r GetReportsResponse) ContentType() string

ContentType is a convenience method to retrieve the Content-Type value from the HTTP response headers

func (GetReportsResponse) GetBody

func (r GetReportsResponse) GetBody() []byte

GetBody returns the raw response body bytes

func (GetReportsResponse) GetJSON200

func (r GetReportsResponse) GetJSON200() *struct {
	Data   ReportSnapshot                      `json:"data"`
	Meta   ResponseMeta                        `json:"meta"`
	Object GetReports200JSONResponseBodyObject `json:"object"`
}

GetJSON200 returns the response for an HTTP 200 `application/json` response

func (GetReportsResponse) GetJSON400

func (r GetReportsResponse) GetJSON400() *ApiError

GetJSON400 returns the response for an HTTP 400 `application/json` response

func (GetReportsResponse) GetJSON401

func (r GetReportsResponse) GetJSON401() *ApiError

GetJSON401 returns the response for an HTTP 401 `application/json` response

func (GetReportsResponse) GetJSON402

func (r GetReportsResponse) GetJSON402() *ApiError

GetJSON402 returns the response for an HTTP 402 `application/json` response

func (GetReportsResponse) GetJSON403

func (r GetReportsResponse) GetJSON403() *ApiError

GetJSON403 returns the response for an HTTP 403 `application/json` response

func (GetReportsResponse) GetJSON408 added in v0.2.0

func (r GetReportsResponse) GetJSON408() *ApiError

GetJSON408 returns the response for an HTTP 408 `application/json` response

func (GetReportsResponse) GetJSON423

func (r GetReportsResponse) GetJSON423() *ApiError

GetJSON423 returns the response for an HTTP 423 `application/json` response

func (GetReportsResponse) GetJSON429

func (r GetReportsResponse) GetJSON429() *ApiError

GetJSON429 returns the response for an HTTP 429 `application/json` response

func (GetReportsResponse) GetJSON500

func (r GetReportsResponse) GetJSON500() *ApiError

GetJSON500 returns the response for an HTTP 500 `application/json` response

func (GetReportsResponse) GetJSON503

func (r GetReportsResponse) GetJSON503() *ApiError

GetJSON503 returns the response for an HTTP 503 `application/json` response

func (GetReportsResponse) Status

func (r GetReportsResponse) Status() string

Status returns HTTPResponse.Status

func (GetReportsResponse) StatusCode

func (r GetReportsResponse) StatusCode() int

StatusCode returns HTTPResponse.StatusCode

type GetReportsResponse200Headers

type GetReportsResponse200Headers struct {
	RateLimitLimit      *int
	RateLimitRemaining  *int
	RateLimitReset      *int
	ServerTiming        *string
	XEffectiveQuery     *string
	XQueryIgnored       *string
	XRateLimitLimit     *int
	XRateLimitRemaining *int
	XRateLimitReset     *int
	XRequestId          *string
	XUsageAccounting    *string
}

GetReportsResponse200Headers the declared response headers of an HTTP 200 response for GetReports

type GetReportsResponse429Headers

type GetReportsResponse429Headers struct {
	RateLimitLimit      *int
	RateLimitRemaining  *int
	RateLimitReset      *int
	RetryAfter          *int
	XRateLimitLimit     *int
	XRateLimitRemaining *int
	XRateLimitReset     *int
	XRequestId          *string
}

GetReportsResponse429Headers the declared response headers of an HTTP 429 response for GetReports

type GetReportsResponse503Headers

type GetReportsResponse503Headers struct {
	RetryAfter *int
	XRequestId *string
}

GetReportsResponse503Headers the declared response headers of an HTTP 503 response for GetReports

type GetStreamParams

type GetStreamParams struct {
	// LastEventId Query-string fallback for the Last-Event-ID resume cursor when the client cannot set the request header. Numeric cluster-shared sequence id; non-numeric or absent attaches live with no replay. A future or expired id emits resync.
	LastEventId *string `form:"last_event_id,omitempty" json:"last_event_id,omitempty"`

	// Seq Alias for last_event_id. Numeric cluster-shared sequence id to resume after; non-numeric or absent attaches live with no replay. A future or expired id emits resync.
	Seq *string `form:"seq,omitempty" json:"seq,omitempty"`

	// Event Optional per-connection subscribe-time filter. Comma-separated list of frame wire types (the SSE 'type' discriminator, e.g. WhaleTradesInserted,wallet_grade_changed); a frame passes only when its type is in the set. An unknown token returns HTTP 400 naming the offending value. An empty/all-whitespace value is treated as absent (no constraint). Applied to BOTH the replay window and live frames, and always AFTER the per-subscriber privacy gate, so it can never widen visibility beyond what the key may already see. Combines with condition_id and min_grade as a logical AND; an absent param adds no constraint.
	Event *string `form:"event,omitempty" json:"event,omitempty"`

	// ConditionId Optional per-connection subscribe-time filter. Raw provider condition_id or mkt_-prefixed market id (normalized the same way the other v1 market endpoints normalize). A frame passes only when it carries a matching condition_id field; frames that carry no condition_id (e.g. whale-pulse events) are EXCLUDED while this is set. An empty value after normalization returns HTTP 400. Combines with event and min_grade as a logical AND; an absent param adds no constraint.
	ConditionId *string `form:"condition_id,omitempty" json:"condition_id,omitempty"`

	// MinGrade Optional per-connection subscribe-time filter. A frame passes only when it carries a grade field whose grade is better-or-equal to this minimum (S is best). Frames without a grade (every frame except wallet_grade_changed and LargeTradeInsertedV2) are excluded. An invalid grade returns HTTP 400. Combines with the other filters as a logical AND.
	MinGrade *GetStreamParamsMinGrade `form:"min_grade,omitempty" json:"min_grade,omitempty"`

	// Wallet Filter LargeTradeInsertedV2 frames to this Polymarket wallet. Other event types have no wallet and are excluded when set. Applied to live and retained Redis frames after privacy checks.
	Wallet *string `form:"wallet,omitempty" json:"wallet,omitempty"`

	// MinSize Filter LargeTradeInsertedV2 frames to trades at or above this USD notional. Positive decimal with at most six places; other event types are excluded when set.
	MinSize *string `form:"min_size,omitempty" json:"min_size,omitempty"`

	// XQueryValidation Opt into strict query-name validation. The default is compatible: unknown names are ignored and reported in X-Query-Ignored. With strict, an unknown name returns 400 bad_request with error.reason unknown_query_parameter before the handler runs, including when its percent escape is incomplete.
	XQueryValidation *GetStreamParamsXQueryValidation `json:"X-Query-Validation,omitempty"`

	// LastEventID Cluster-shared sequence id of the last frame the client successfully processed. The stream replays the strictly-newer retained window before resuming live, even when reconnect routing changes replicas. A future or expired id emits resync. Browser EventSource clients send this automatically on reconnect. Omit to attach live from now.
	LastEventID *string `json:"Last-Event-ID,omitempty"`
}

GetStreamParams defines parameters for GetStream.

type GetStreamParamsMinGrade

type GetStreamParamsMinGrade string

GetStreamParamsMinGrade defines parameters for GetStream.

const (
	GetStreamParamsMinGradeA GetStreamParamsMinGrade = "A"
	GetStreamParamsMinGradeB GetStreamParamsMinGrade = "B"
	GetStreamParamsMinGradeC GetStreamParamsMinGrade = "C"
	GetStreamParamsMinGradeD GetStreamParamsMinGrade = "D"
	GetStreamParamsMinGradeF GetStreamParamsMinGrade = "F"
	GetStreamParamsMinGradeS GetStreamParamsMinGrade = "S"
)

Defines values for GetStreamParamsMinGrade.

func (GetStreamParamsMinGrade) Valid

func (e GetStreamParamsMinGrade) Valid() bool

Valid indicates whether the value is a known member of the GetStreamParamsMinGrade enum.

type GetStreamParamsXQueryValidation added in v0.3.0

type GetStreamParamsXQueryValidation string

GetStreamParamsXQueryValidation defines parameters for GetStream.

const (
	GetStreamParamsXQueryValidationStrict GetStreamParamsXQueryValidation = "strict"
)

Defines values for GetStreamParamsXQueryValidation.

func (GetStreamParamsXQueryValidation) Valid added in v0.3.0

Valid indicates whether the value is a known member of the GetStreamParamsXQueryValidation enum.

type GetStreamResponse

type GetStreamResponse struct {
	Body         []byte
	HTTPResponse *http.Response
	// JSON400 the response for an HTTP 400 `application/json` response
	JSON400 *ApiError
	// JSON401 the response for an HTTP 401 `application/json` response
	JSON401 *ApiError
	// JSON402 the response for an HTTP 402 `application/json` response
	JSON402 *ApiError
	// JSON403 the response for an HTTP 403 `application/json` response
	JSON403 *ApiError
	// JSON423 the response for an HTTP 423 `application/json` response
	JSON423 *ApiError
	// JSON429 the response for an HTTP 429 `application/json` response
	JSON429 *ApiError
	// JSON500 the response for an HTTP 500 `application/json` response
	JSON500 *ApiError
	// JSON503 the response for an HTTP 503 `application/json` response
	JSON503 *ApiError
	// Headers200 the parsed response headers for an HTTP 200 response
	Headers200 *GetStreamResponse200Headers
	// Headers429 the parsed response headers for an HTTP 429 response
	Headers429 *GetStreamResponse429Headers
	// Headers503 the parsed response headers for an HTTP 503 response
	Headers503 *GetStreamResponse503Headers
}

func ParseGetStreamResponse

func ParseGetStreamResponse(rsp *http.Response) (*GetStreamResponse, error)

ParseGetStreamResponse parses an HTTP response from a GetStreamWithResponse call

func (GetStreamResponse) ContentType

func (r GetStreamResponse) ContentType() string

ContentType is a convenience method to retrieve the Content-Type value from the HTTP response headers

func (GetStreamResponse) GetBody

func (r GetStreamResponse) GetBody() []byte

GetBody returns the raw response body bytes

func (GetStreamResponse) GetJSON400

func (r GetStreamResponse) GetJSON400() *ApiError

GetJSON400 returns the response for an HTTP 400 `application/json` response

func (GetStreamResponse) GetJSON401

func (r GetStreamResponse) GetJSON401() *ApiError

GetJSON401 returns the response for an HTTP 401 `application/json` response

func (GetStreamResponse) GetJSON402

func (r GetStreamResponse) GetJSON402() *ApiError

GetJSON402 returns the response for an HTTP 402 `application/json` response

func (GetStreamResponse) GetJSON403

func (r GetStreamResponse) GetJSON403() *ApiError

GetJSON403 returns the response for an HTTP 403 `application/json` response

func (GetStreamResponse) GetJSON423

func (r GetStreamResponse) GetJSON423() *ApiError

GetJSON423 returns the response for an HTTP 423 `application/json` response

func (GetStreamResponse) GetJSON429

func (r GetStreamResponse) GetJSON429() *ApiError

GetJSON429 returns the response for an HTTP 429 `application/json` response

func (GetStreamResponse) GetJSON500 added in v0.4.0

func (r GetStreamResponse) GetJSON500() *ApiError

GetJSON500 returns the response for an HTTP 500 `application/json` response

func (GetStreamResponse) GetJSON503

func (r GetStreamResponse) GetJSON503() *ApiError

GetJSON503 returns the response for an HTTP 503 `application/json` response

func (GetStreamResponse) Status

func (r GetStreamResponse) Status() string

Status returns HTTPResponse.Status

func (GetStreamResponse) StatusCode

func (r GetStreamResponse) StatusCode() int

StatusCode returns HTTPResponse.StatusCode

type GetStreamResponse200Headers

type GetStreamResponse200Headers struct {
	RateLimitLimit      *int
	RateLimitRemaining  *int
	RateLimitReset      *int
	ServerTiming        *string
	XEffectiveQuery     *string
	XQueryIgnored       *string
	XRateLimitLimit     *int
	XRateLimitRemaining *int
	XRateLimitReset     *int
	XRequestId          *string
	XUsageAccounting    *string
}

GetStreamResponse200Headers the declared response headers of an HTTP 200 response for GetStream

type GetStreamResponse429Headers

type GetStreamResponse429Headers struct {
	RateLimitLimit      *int
	RateLimitRemaining  *int
	RateLimitReset      *int
	RetryAfter          *int
	XRateLimitLimit     *int
	XRateLimitRemaining *int
	XRateLimitReset     *int
	XRequestId          *string
}

GetStreamResponse429Headers the declared response headers of an HTTP 429 response for GetStream

type GetStreamResponse503Headers

type GetStreamResponse503Headers struct {
	RetryAfter *int
	XRequestId *string
}

GetStreamResponse503Headers the declared response headers of an HTTP 503 response for GetStream

type GetSuspiciousTrade200JSONResponseBodyObject added in v0.4.0

type GetSuspiciousTrade200JSONResponseBodyObject string

GetSuspiciousTrade200JSONResponseBodyObject defines parameters for GetSuspiciousTrade.

const (
	GetSuspiciousTrade200JSONResponseBodyObjectSuspiciousTrade GetSuspiciousTrade200JSONResponseBodyObject = "suspicious_trade"
)

Defines values for GetSuspiciousTrade200JSONResponseBodyObject.

func (GetSuspiciousTrade200JSONResponseBodyObject) Valid added in v0.4.0

Valid indicates whether the value is a known member of the GetSuspiciousTrade200JSONResponseBodyObject enum.

type GetSuspiciousTradeParams added in v0.4.0

type GetSuspiciousTradeParams struct {
	// XQueryValidation Opt into strict query-name validation. The default is compatible: unknown names are ignored and reported in X-Query-Ignored. With strict, an unknown name returns 400 bad_request with error.reason unknown_query_parameter before the handler runs.
	XQueryValidation *GetSuspiciousTradeParamsXQueryValidation `json:"X-Query-Validation,omitempty"`

	// IfNoneMatch Conditional GET validator from a previous ETag. Matching values return 304 Not Modified with an empty body.
	IfNoneMatch *string `json:"If-None-Match,omitempty"`
}

GetSuspiciousTradeParams defines parameters for GetSuspiciousTrade.

type GetSuspiciousTradeParamsXQueryValidation added in v0.4.0

type GetSuspiciousTradeParamsXQueryValidation string

GetSuspiciousTradeParamsXQueryValidation defines parameters for GetSuspiciousTrade.

const (
	GetSuspiciousTradeParamsXQueryValidationStrict GetSuspiciousTradeParamsXQueryValidation = "strict"
)

Defines values for GetSuspiciousTradeParamsXQueryValidation.

func (GetSuspiciousTradeParamsXQueryValidation) Valid added in v0.4.0

Valid indicates whether the value is a known member of the GetSuspiciousTradeParamsXQueryValidation enum.

type GetSuspiciousTradeResponse added in v0.4.0

type GetSuspiciousTradeResponse struct {
	Body         []byte
	HTTPResponse *http.Response
	// JSON200 the response for an HTTP 200 `application/json` response
	JSON200 *struct {
		Data   SuspiciousTrade                             `json:"data"`
		Meta   ResponseMeta                                `json:"meta"`
		Object GetSuspiciousTrade200JSONResponseBodyObject `json:"object"`
	}
	// JSON400 the response for an HTTP 400 `application/json` response
	JSON400 *ApiError
	// JSON401 the response for an HTTP 401 `application/json` response
	JSON401 *ApiError
	// JSON402 the response for an HTTP 402 `application/json` response
	JSON402 *ApiError
	// JSON403 the response for an HTTP 403 `application/json` response
	JSON403 *ApiError
	// JSON404 the response for an HTTP 404 `application/json` response
	JSON404 *ApiError
	// JSON408 the response for an HTTP 408 `application/json` response
	JSON408 *ApiError
	// JSON423 the response for an HTTP 423 `application/json` response
	JSON423 *ApiError
	// JSON429 the response for an HTTP 429 `application/json` response
	JSON429 *ApiError
	// JSON500 the response for an HTTP 500 `application/json` response
	JSON500 *ApiError
	// JSON503 the response for an HTTP 503 `application/json` response
	JSON503 *ApiError
	// Headers200 the parsed response headers for an HTTP 200 response
	Headers200 *GetSuspiciousTradeResponse200Headers
	// Headers304 the parsed response headers for an HTTP 304 response
	Headers304 *GetSuspiciousTradeResponse304Headers
	// Headers429 the parsed response headers for an HTTP 429 response
	Headers429 *GetSuspiciousTradeResponse429Headers
	// Headers503 the parsed response headers for an HTTP 503 response
	Headers503 *GetSuspiciousTradeResponse503Headers
}

func ParseGetSuspiciousTradeResponse added in v0.4.0

func ParseGetSuspiciousTradeResponse(rsp *http.Response) (*GetSuspiciousTradeResponse, error)

ParseGetSuspiciousTradeResponse parses an HTTP response from a GetSuspiciousTradeWithResponse call

func (GetSuspiciousTradeResponse) ContentType added in v0.4.0

func (r GetSuspiciousTradeResponse) ContentType() string

ContentType is a convenience method to retrieve the Content-Type value from the HTTP response headers

func (GetSuspiciousTradeResponse) GetBody added in v0.4.0

func (r GetSuspiciousTradeResponse) GetBody() []byte

GetBody returns the raw response body bytes

func (GetSuspiciousTradeResponse) GetJSON200 added in v0.4.0

func (r GetSuspiciousTradeResponse) GetJSON200() *struct {
	Data   SuspiciousTrade                             `json:"data"`
	Meta   ResponseMeta                                `json:"meta"`
	Object GetSuspiciousTrade200JSONResponseBodyObject `json:"object"`
}

GetJSON200 returns the response for an HTTP 200 `application/json` response

func (GetSuspiciousTradeResponse) GetJSON400 added in v0.4.0

func (r GetSuspiciousTradeResponse) GetJSON400() *ApiError

GetJSON400 returns the response for an HTTP 400 `application/json` response

func (GetSuspiciousTradeResponse) GetJSON401 added in v0.4.0

func (r GetSuspiciousTradeResponse) GetJSON401() *ApiError

GetJSON401 returns the response for an HTTP 401 `application/json` response

func (GetSuspiciousTradeResponse) GetJSON402 added in v0.4.0

func (r GetSuspiciousTradeResponse) GetJSON402() *ApiError

GetJSON402 returns the response for an HTTP 402 `application/json` response

func (GetSuspiciousTradeResponse) GetJSON403 added in v0.4.0

func (r GetSuspiciousTradeResponse) GetJSON403() *ApiError

GetJSON403 returns the response for an HTTP 403 `application/json` response

func (GetSuspiciousTradeResponse) GetJSON404 added in v0.4.0

func (r GetSuspiciousTradeResponse) GetJSON404() *ApiError

GetJSON404 returns the response for an HTTP 404 `application/json` response

func (GetSuspiciousTradeResponse) GetJSON408 added in v0.4.0

func (r GetSuspiciousTradeResponse) GetJSON408() *ApiError

GetJSON408 returns the response for an HTTP 408 `application/json` response

func (GetSuspiciousTradeResponse) GetJSON423 added in v0.4.0

func (r GetSuspiciousTradeResponse) GetJSON423() *ApiError

GetJSON423 returns the response for an HTTP 423 `application/json` response

func (GetSuspiciousTradeResponse) GetJSON429 added in v0.4.0

func (r GetSuspiciousTradeResponse) GetJSON429() *ApiError

GetJSON429 returns the response for an HTTP 429 `application/json` response

func (GetSuspiciousTradeResponse) GetJSON500 added in v0.4.0

func (r GetSuspiciousTradeResponse) GetJSON500() *ApiError

GetJSON500 returns the response for an HTTP 500 `application/json` response

func (GetSuspiciousTradeResponse) GetJSON503 added in v0.4.0

func (r GetSuspiciousTradeResponse) GetJSON503() *ApiError

GetJSON503 returns the response for an HTTP 503 `application/json` response

func (GetSuspiciousTradeResponse) Status added in v0.4.0

Status returns HTTPResponse.Status

func (GetSuspiciousTradeResponse) StatusCode added in v0.4.0

func (r GetSuspiciousTradeResponse) StatusCode() int

StatusCode returns HTTPResponse.StatusCode

type GetSuspiciousTradeResponse200Headers added in v0.4.0

type GetSuspiciousTradeResponse200Headers struct {
	ETag                *string
	RateLimitLimit      *int
	RateLimitRemaining  *int
	RateLimitReset      *int
	ServerTiming        *string
	XEffectiveQuery     *string
	XQueryIgnored       *string
	XRateLimitLimit     *int
	XRateLimitRemaining *int
	XRateLimitReset     *int
	XRequestId          *string
	XUsageAccounting    *string
}

GetSuspiciousTradeResponse200Headers the declared response headers of an HTTP 200 response for GetSuspiciousTrade

type GetSuspiciousTradeResponse304Headers added in v0.4.0

type GetSuspiciousTradeResponse304Headers struct {
	ETag                *string
	RateLimitLimit      *int
	RateLimitRemaining  *int
	RateLimitReset      *int
	ServerTiming        *string
	XEffectiveQuery     *string
	XQueryIgnored       *string
	XRateLimitLimit     *int
	XRateLimitRemaining *int
	XRateLimitReset     *int
	XRequestId          *string
	XUsageAccounting    *string
}

GetSuspiciousTradeResponse304Headers the declared response headers of an HTTP 304 response for GetSuspiciousTrade

type GetSuspiciousTradeResponse429Headers added in v0.4.0

type GetSuspiciousTradeResponse429Headers struct {
	RateLimitLimit      *int
	RateLimitRemaining  *int
	RateLimitReset      *int
	RetryAfter          *int
	XRateLimitLimit     *int
	XRateLimitRemaining *int
	XRateLimitReset     *int
	XRequestId          *string
}

GetSuspiciousTradeResponse429Headers the declared response headers of an HTTP 429 response for GetSuspiciousTrade

type GetSuspiciousTradeResponse503Headers added in v0.4.0

type GetSuspiciousTradeResponse503Headers struct {
	RetryAfter *int
	XRequestId *string
}

GetSuspiciousTradeResponse503Headers the declared response headers of an HTTP 503 response for GetSuspiciousTrade

type GetTrader200JSONResponseBodyObject

type GetTrader200JSONResponseBodyObject string

GetTrader200JSONResponseBodyObject defines parameters for GetTrader.

const (
	GetTrader200JSONResponseBodyObjectTrader GetTrader200JSONResponseBodyObject = "trader"
)

Defines values for GetTrader200JSONResponseBodyObject.

func (GetTrader200JSONResponseBodyObject) Valid

Valid indicates whether the value is a known member of the GetTrader200JSONResponseBodyObject enum.

type GetTraderCategoryRecords200JSONResponseBodyObject added in v0.2.0

type GetTraderCategoryRecords200JSONResponseBodyObject string

GetTraderCategoryRecords200JSONResponseBodyObject defines parameters for GetTraderCategoryRecords.

const (
	GetTraderCategoryRecords200JSONResponseBodyObjectTraderCategoryRecords GetTraderCategoryRecords200JSONResponseBodyObject = "trader_category_records"
)

Defines values for GetTraderCategoryRecords200JSONResponseBodyObject.

func (GetTraderCategoryRecords200JSONResponseBodyObject) Valid added in v0.2.0

Valid indicates whether the value is a known member of the GetTraderCategoryRecords200JSONResponseBodyObject enum.

type GetTraderCategoryRecordsParams added in v0.2.0

type GetTraderCategoryRecordsParams struct {
	// Category Filter to one canonical category, matched through the same rollup every other category surface uses: soccer, EPL and champions league all reach Soccer, every esports label folds into Esports, and football is AMERICAN football and reaches Football. A filter that reaches Esports returns the Esports record with all of its games; a game is not a filter of its own, so ask for esports and read games. A value that matches no record answers 200 with an empty records array, never 404.
	Category *string `form:"category,omitempty" json:"category,omitempty"`

	// XQueryValidation Opt into strict query-name validation. The default is compatible: unknown names are ignored and reported in X-Query-Ignored. With strict, an unknown name returns 400 bad_request with error.reason unknown_query_parameter before the handler runs, including when its percent escape is incomplete.
	XQueryValidation *GetTraderCategoryRecordsParamsXQueryValidation `json:"X-Query-Validation,omitempty"`

	// IfNoneMatch Conditional GET validator from a previous ETag. Matching values return 304 Not Modified with an empty body.
	IfNoneMatch *string `json:"If-None-Match,omitempty"`
}

GetTraderCategoryRecordsParams defines parameters for GetTraderCategoryRecords.

type GetTraderCategoryRecordsParamsXQueryValidation added in v0.3.0

type GetTraderCategoryRecordsParamsXQueryValidation string

GetTraderCategoryRecordsParamsXQueryValidation defines parameters for GetTraderCategoryRecords.

const (
	GetTraderCategoryRecordsParamsXQueryValidationStrict GetTraderCategoryRecordsParamsXQueryValidation = "strict"
)

Defines values for GetTraderCategoryRecordsParamsXQueryValidation.

func (GetTraderCategoryRecordsParamsXQueryValidation) Valid added in v0.3.0

Valid indicates whether the value is a known member of the GetTraderCategoryRecordsParamsXQueryValidation enum.

type GetTraderCategoryRecordsResponse added in v0.2.0

type GetTraderCategoryRecordsResponse struct {
	Body         []byte
	HTTPResponse *http.Response
	// JSON200 the response for an HTTP 200 `application/json` response
	JSON200 *struct {
		Data   TraderCategoryRecords                             `json:"data"`
		Meta   ResponseMeta                                      `json:"meta"`
		Object GetTraderCategoryRecords200JSONResponseBodyObject `json:"object"`
	}
	// JSON400 the response for an HTTP 400 `application/json` response
	JSON400 *ApiError
	// JSON401 the response for an HTTP 401 `application/json` response
	JSON401 *ApiError
	// JSON402 the response for an HTTP 402 `application/json` response
	JSON402 *ApiError
	// JSON403 the response for an HTTP 403 `application/json` response
	JSON403 *ApiError
	// JSON404 the response for an HTTP 404 `application/json` response
	JSON404 *ApiError
	// JSON408 the response for an HTTP 408 `application/json` response
	JSON408 *ApiError
	// JSON423 the response for an HTTP 423 `application/json` response
	JSON423 *ApiError
	// JSON429 the response for an HTTP 429 `application/json` response
	JSON429 *ApiError
	// JSON500 the response for an HTTP 500 `application/json` response
	JSON500 *ApiError
	// JSON503 the response for an HTTP 503 `application/json` response
	JSON503 *ApiError
	// Headers200 the parsed response headers for an HTTP 200 response
	Headers200 *GetTraderCategoryRecordsResponse200Headers
	// Headers304 the parsed response headers for an HTTP 304 response
	Headers304 *GetTraderCategoryRecordsResponse304Headers
	// Headers429 the parsed response headers for an HTTP 429 response
	Headers429 *GetTraderCategoryRecordsResponse429Headers
	// Headers503 the parsed response headers for an HTTP 503 response
	Headers503 *GetTraderCategoryRecordsResponse503Headers
}

func ParseGetTraderCategoryRecordsResponse added in v0.2.0

func ParseGetTraderCategoryRecordsResponse(rsp *http.Response) (*GetTraderCategoryRecordsResponse, error)

ParseGetTraderCategoryRecordsResponse parses an HTTP response from a GetTraderCategoryRecordsWithResponse call

func (GetTraderCategoryRecordsResponse) ContentType added in v0.2.0

func (r GetTraderCategoryRecordsResponse) ContentType() string

ContentType is a convenience method to retrieve the Content-Type value from the HTTP response headers

func (GetTraderCategoryRecordsResponse) GetBody added in v0.2.0

func (r GetTraderCategoryRecordsResponse) GetBody() []byte

GetBody returns the raw response body bytes

func (GetTraderCategoryRecordsResponse) GetJSON200 added in v0.2.0

func (r GetTraderCategoryRecordsResponse) GetJSON200() *struct {
	Data   TraderCategoryRecords                             `json:"data"`
	Meta   ResponseMeta                                      `json:"meta"`
	Object GetTraderCategoryRecords200JSONResponseBodyObject `json:"object"`
}

GetJSON200 returns the response for an HTTP 200 `application/json` response

func (GetTraderCategoryRecordsResponse) GetJSON400 added in v0.2.0

GetJSON400 returns the response for an HTTP 400 `application/json` response

func (GetTraderCategoryRecordsResponse) GetJSON401 added in v0.2.0

GetJSON401 returns the response for an HTTP 401 `application/json` response

func (GetTraderCategoryRecordsResponse) GetJSON402 added in v0.2.0

GetJSON402 returns the response for an HTTP 402 `application/json` response

func (GetTraderCategoryRecordsResponse) GetJSON403 added in v0.2.0

GetJSON403 returns the response for an HTTP 403 `application/json` response

func (GetTraderCategoryRecordsResponse) GetJSON404 added in v0.2.0

GetJSON404 returns the response for an HTTP 404 `application/json` response

func (GetTraderCategoryRecordsResponse) GetJSON408 added in v0.2.0

GetJSON408 returns the response for an HTTP 408 `application/json` response

func (GetTraderCategoryRecordsResponse) GetJSON423 added in v0.2.0

GetJSON423 returns the response for an HTTP 423 `application/json` response

func (GetTraderCategoryRecordsResponse) GetJSON429 added in v0.2.0

GetJSON429 returns the response for an HTTP 429 `application/json` response

func (GetTraderCategoryRecordsResponse) GetJSON500 added in v0.4.0

GetJSON500 returns the response for an HTTP 500 `application/json` response

func (GetTraderCategoryRecordsResponse) GetJSON503 added in v0.2.0

GetJSON503 returns the response for an HTTP 503 `application/json` response

func (GetTraderCategoryRecordsResponse) Status added in v0.2.0

Status returns HTTPResponse.Status

func (GetTraderCategoryRecordsResponse) StatusCode added in v0.2.0

func (r GetTraderCategoryRecordsResponse) StatusCode() int

StatusCode returns HTTPResponse.StatusCode

type GetTraderCategoryRecordsResponse200Headers added in v0.2.0

type GetTraderCategoryRecordsResponse200Headers struct {
	ETag                *string
	RateLimitLimit      *int
	RateLimitRemaining  *int
	RateLimitReset      *int
	ServerTiming        *string
	XEffectiveQuery     *string
	XQueryIgnored       *string
	XRateLimitLimit     *int
	XRateLimitRemaining *int
	XRateLimitReset     *int
	XRequestId          *string
	XUsageAccounting    *string
}

GetTraderCategoryRecordsResponse200Headers the declared response headers of an HTTP 200 response for GetTraderCategoryRecords

type GetTraderCategoryRecordsResponse304Headers added in v0.2.0

type GetTraderCategoryRecordsResponse304Headers struct {
	ETag                *string
	RateLimitLimit      *int
	RateLimitRemaining  *int
	RateLimitReset      *int
	ServerTiming        *string
	XEffectiveQuery     *string
	XQueryIgnored       *string
	XRateLimitLimit     *int
	XRateLimitRemaining *int
	XRateLimitReset     *int
	XRequestId          *string
	XUsageAccounting    *string
}

GetTraderCategoryRecordsResponse304Headers the declared response headers of an HTTP 304 response for GetTraderCategoryRecords

type GetTraderCategoryRecordsResponse429Headers added in v0.2.0

type GetTraderCategoryRecordsResponse429Headers struct {
	RateLimitLimit      *int
	RateLimitRemaining  *int
	RateLimitReset      *int
	RetryAfter          *int
	XRateLimitLimit     *int
	XRateLimitRemaining *int
	XRateLimitReset     *int
	XRequestId          *string
}

GetTraderCategoryRecordsResponse429Headers the declared response headers of an HTTP 429 response for GetTraderCategoryRecords

type GetTraderCategoryRecordsResponse503Headers added in v0.2.0

type GetTraderCategoryRecordsResponse503Headers struct {
	RetryAfter *int
	XRequestId *string
}

GetTraderCategoryRecordsResponse503Headers the declared response headers of an HTTP 503 response for GetTraderCategoryRecords

type GetTraderContext200JSONResponseBodyObject

type GetTraderContext200JSONResponseBodyObject string

GetTraderContext200JSONResponseBodyObject defines parameters for GetTraderContext.

const (
	GetTraderContext200JSONResponseBodyObjectTraderContext GetTraderContext200JSONResponseBodyObject = "trader_context"
)

Defines values for GetTraderContext200JSONResponseBodyObject.

func (GetTraderContext200JSONResponseBodyObject) Valid

Valid indicates whether the value is a known member of the GetTraderContext200JSONResponseBodyObject enum.

type GetTraderContextMarkdownParams added in v0.3.0

type GetTraderContextMarkdownParams struct {
	// XQueryValidation Opt into strict query-name validation. The default is compatible: unknown names are ignored and reported in X-Query-Ignored. With strict, an unknown name returns 400 bad_request with error.reason unknown_query_parameter before the handler runs, including when its percent escape is incomplete.
	XQueryValidation *GetTraderContextMarkdownParamsXQueryValidation `json:"X-Query-Validation,omitempty"`
}

GetTraderContextMarkdownParams defines parameters for GetTraderContextMarkdown.

type GetTraderContextMarkdownParamsXQueryValidation added in v0.3.0

type GetTraderContextMarkdownParamsXQueryValidation string

GetTraderContextMarkdownParamsXQueryValidation defines parameters for GetTraderContextMarkdown.

const (
	GetTraderContextMarkdownParamsXQueryValidationStrict GetTraderContextMarkdownParamsXQueryValidation = "strict"
)

Defines values for GetTraderContextMarkdownParamsXQueryValidation.

func (GetTraderContextMarkdownParamsXQueryValidation) Valid added in v0.3.0

Valid indicates whether the value is a known member of the GetTraderContextMarkdownParamsXQueryValidation enum.

type GetTraderContextMarkdownResponse

type GetTraderContextMarkdownResponse struct {
	Body         []byte
	HTTPResponse *http.Response
	// JSON400 the response for an HTTP 400 `application/json` response
	JSON400 *ApiError
	// JSON401 the response for an HTTP 401 `application/json` response
	JSON401 *ApiError
	// JSON402 the response for an HTTP 402 `application/json` response
	JSON402 *ApiError
	// JSON403 the response for an HTTP 403 `application/json` response
	JSON403 *ApiError
	// JSON404 the response for an HTTP 404 `application/json` response
	JSON404 *ApiError
	// JSON408 the response for an HTTP 408 `application/json` response
	JSON408 *ApiError
	// JSON423 the response for an HTTP 423 `application/json` response
	JSON423 *ApiError
	// JSON429 the response for an HTTP 429 `application/json` response
	JSON429 *ApiError
	// JSON500 the response for an HTTP 500 `application/json` response
	JSON500 *ApiError
	// JSON503 the response for an HTTP 503 `application/json` response
	JSON503 *ApiError
	// Headers200 the parsed response headers for an HTTP 200 response
	Headers200 *GetTraderContextMarkdownResponse200Headers
	// Headers429 the parsed response headers for an HTTP 429 response
	Headers429 *GetTraderContextMarkdownResponse429Headers
	// Headers503 the parsed response headers for an HTTP 503 response
	Headers503 *GetTraderContextMarkdownResponse503Headers
}

func ParseGetTraderContextMarkdownResponse

func ParseGetTraderContextMarkdownResponse(rsp *http.Response) (*GetTraderContextMarkdownResponse, error)

ParseGetTraderContextMarkdownResponse parses an HTTP response from a GetTraderContextMarkdownWithResponse call

func (GetTraderContextMarkdownResponse) ContentType

func (r GetTraderContextMarkdownResponse) ContentType() string

ContentType is a convenience method to retrieve the Content-Type value from the HTTP response headers

func (GetTraderContextMarkdownResponse) GetBody

func (r GetTraderContextMarkdownResponse) GetBody() []byte

GetBody returns the raw response body bytes

func (GetTraderContextMarkdownResponse) GetJSON400

GetJSON400 returns the response for an HTTP 400 `application/json` response

func (GetTraderContextMarkdownResponse) GetJSON401

GetJSON401 returns the response for an HTTP 401 `application/json` response

func (GetTraderContextMarkdownResponse) GetJSON402

GetJSON402 returns the response for an HTTP 402 `application/json` response

func (GetTraderContextMarkdownResponse) GetJSON403

GetJSON403 returns the response for an HTTP 403 `application/json` response

func (GetTraderContextMarkdownResponse) GetJSON404 added in v0.4.0

GetJSON404 returns the response for an HTTP 404 `application/json` response

func (GetTraderContextMarkdownResponse) GetJSON408 added in v0.2.0

GetJSON408 returns the response for an HTTP 408 `application/json` response

func (GetTraderContextMarkdownResponse) GetJSON423

GetJSON423 returns the response for an HTTP 423 `application/json` response

func (GetTraderContextMarkdownResponse) GetJSON429

GetJSON429 returns the response for an HTTP 429 `application/json` response

func (GetTraderContextMarkdownResponse) GetJSON500

GetJSON500 returns the response for an HTTP 500 `application/json` response

func (GetTraderContextMarkdownResponse) GetJSON503

GetJSON503 returns the response for an HTTP 503 `application/json` response

func (GetTraderContextMarkdownResponse) Status

Status returns HTTPResponse.Status

func (GetTraderContextMarkdownResponse) StatusCode

func (r GetTraderContextMarkdownResponse) StatusCode() int

StatusCode returns HTTPResponse.StatusCode

type GetTraderContextMarkdownResponse200Headers

type GetTraderContextMarkdownResponse200Headers struct {
	RateLimitLimit      *int
	RateLimitRemaining  *int
	RateLimitReset      *int
	ServerTiming        *string
	XEffectiveQuery     *string
	XQueryIgnored       *string
	XRateLimitLimit     *int
	XRateLimitRemaining *int
	XRateLimitReset     *int
	XRequestId          *string
	XUsageAccounting    *string
}

GetTraderContextMarkdownResponse200Headers the declared response headers of an HTTP 200 response for GetTraderContextMarkdown

type GetTraderContextMarkdownResponse429Headers

type GetTraderContextMarkdownResponse429Headers struct {
	RateLimitLimit      *int
	RateLimitRemaining  *int
	RateLimitReset      *int
	RetryAfter          *int
	XRateLimitLimit     *int
	XRateLimitRemaining *int
	XRateLimitReset     *int
	XRequestId          *string
}

GetTraderContextMarkdownResponse429Headers the declared response headers of an HTTP 429 response for GetTraderContextMarkdown

type GetTraderContextMarkdownResponse503Headers

type GetTraderContextMarkdownResponse503Headers struct {
	RetryAfter *int
	XRequestId *string
}

GetTraderContextMarkdownResponse503Headers the declared response headers of an HTTP 503 response for GetTraderContextMarkdown

type GetTraderContextParams

type GetTraderContextParams struct {
	// XQueryValidation Opt into strict query-name validation. The default is compatible: unknown names are ignored and reported in X-Query-Ignored. With strict, an unknown name returns 400 bad_request with error.reason unknown_query_parameter before the handler runs, including when its percent escape is incomplete.
	XQueryValidation *GetTraderContextParamsXQueryValidation `json:"X-Query-Validation,omitempty"`

	// IfNoneMatch Conditional GET validator from a previous ETag. Matching values return 304 Not Modified with an empty body.
	IfNoneMatch *string `json:"If-None-Match,omitempty"`
}

GetTraderContextParams defines parameters for GetTraderContext.

type GetTraderContextParamsXQueryValidation added in v0.3.0

type GetTraderContextParamsXQueryValidation string

GetTraderContextParamsXQueryValidation defines parameters for GetTraderContext.

const (
	GetTraderContextParamsXQueryValidationStrict GetTraderContextParamsXQueryValidation = "strict"
)

Defines values for GetTraderContextParamsXQueryValidation.

func (GetTraderContextParamsXQueryValidation) Valid added in v0.3.0

Valid indicates whether the value is a known member of the GetTraderContextParamsXQueryValidation enum.

type GetTraderContextResponse

type GetTraderContextResponse struct {
	Body         []byte
	HTTPResponse *http.Response
	// JSON200 the response for an HTTP 200 `application/json` response
	JSON200 *struct {
		Data   TraderContext                             `json:"data"`
		Meta   ResponseMeta                              `json:"meta"`
		Object GetTraderContext200JSONResponseBodyObject `json:"object"`
	}
	// JSON400 the response for an HTTP 400 `application/json` response
	JSON400 *ApiError
	// JSON401 the response for an HTTP 401 `application/json` response
	JSON401 *ApiError
	// JSON402 the response for an HTTP 402 `application/json` response
	JSON402 *ApiError
	// JSON403 the response for an HTTP 403 `application/json` response
	JSON403 *ApiError
	// JSON404 the response for an HTTP 404 `application/json` response
	JSON404 *ApiError
	// JSON408 the response for an HTTP 408 `application/json` response
	JSON408 *ApiError
	// JSON423 the response for an HTTP 423 `application/json` response
	JSON423 *ApiError
	// JSON429 the response for an HTTP 429 `application/json` response
	JSON429 *ApiError
	// JSON500 the response for an HTTP 500 `application/json` response
	JSON500 *ApiError
	// JSON503 the response for an HTTP 503 `application/json` response
	JSON503 *ApiError
	// Headers200 the parsed response headers for an HTTP 200 response
	Headers200 *GetTraderContextResponse200Headers
	// Headers304 the parsed response headers for an HTTP 304 response
	Headers304 *GetTraderContextResponse304Headers
	// Headers429 the parsed response headers for an HTTP 429 response
	Headers429 *GetTraderContextResponse429Headers
	// Headers503 the parsed response headers for an HTTP 503 response
	Headers503 *GetTraderContextResponse503Headers
}

func ParseGetTraderContextResponse

func ParseGetTraderContextResponse(rsp *http.Response) (*GetTraderContextResponse, error)

ParseGetTraderContextResponse parses an HTTP response from a GetTraderContextWithResponse call

func (GetTraderContextResponse) ContentType

func (r GetTraderContextResponse) ContentType() string

ContentType is a convenience method to retrieve the Content-Type value from the HTTP response headers

func (GetTraderContextResponse) GetBody

func (r GetTraderContextResponse) GetBody() []byte

GetBody returns the raw response body bytes

func (GetTraderContextResponse) GetJSON200

func (r GetTraderContextResponse) GetJSON200() *struct {
	Data   TraderContext                             `json:"data"`
	Meta   ResponseMeta                              `json:"meta"`
	Object GetTraderContext200JSONResponseBodyObject `json:"object"`
}

GetJSON200 returns the response for an HTTP 200 `application/json` response

func (GetTraderContextResponse) GetJSON400

func (r GetTraderContextResponse) GetJSON400() *ApiError

GetJSON400 returns the response for an HTTP 400 `application/json` response

func (GetTraderContextResponse) GetJSON401

func (r GetTraderContextResponse) GetJSON401() *ApiError

GetJSON401 returns the response for an HTTP 401 `application/json` response

func (GetTraderContextResponse) GetJSON402

func (r GetTraderContextResponse) GetJSON402() *ApiError

GetJSON402 returns the response for an HTTP 402 `application/json` response

func (GetTraderContextResponse) GetJSON403

func (r GetTraderContextResponse) GetJSON403() *ApiError

GetJSON403 returns the response for an HTTP 403 `application/json` response

func (GetTraderContextResponse) GetJSON404 added in v0.4.0

func (r GetTraderContextResponse) GetJSON404() *ApiError

GetJSON404 returns the response for an HTTP 404 `application/json` response

func (GetTraderContextResponse) GetJSON408 added in v0.2.0

func (r GetTraderContextResponse) GetJSON408() *ApiError

GetJSON408 returns the response for an HTTP 408 `application/json` response

func (GetTraderContextResponse) GetJSON423

func (r GetTraderContextResponse) GetJSON423() *ApiError

GetJSON423 returns the response for an HTTP 423 `application/json` response

func (GetTraderContextResponse) GetJSON429

func (r GetTraderContextResponse) GetJSON429() *ApiError

GetJSON429 returns the response for an HTTP 429 `application/json` response

func (GetTraderContextResponse) GetJSON500

func (r GetTraderContextResponse) GetJSON500() *ApiError

GetJSON500 returns the response for an HTTP 500 `application/json` response

func (GetTraderContextResponse) GetJSON503

func (r GetTraderContextResponse) GetJSON503() *ApiError

GetJSON503 returns the response for an HTTP 503 `application/json` response

func (GetTraderContextResponse) Status

func (r GetTraderContextResponse) Status() string

Status returns HTTPResponse.Status

func (GetTraderContextResponse) StatusCode

func (r GetTraderContextResponse) StatusCode() int

StatusCode returns HTTPResponse.StatusCode

type GetTraderContextResponse200Headers

type GetTraderContextResponse200Headers struct {
	ETag                *string
	RateLimitLimit      *int
	RateLimitRemaining  *int
	RateLimitReset      *int
	ServerTiming        *string
	XEffectiveQuery     *string
	XQueryIgnored       *string
	XRateLimitLimit     *int
	XRateLimitRemaining *int
	XRateLimitReset     *int
	XRequestId          *string
	XUsageAccounting    *string
}

GetTraderContextResponse200Headers the declared response headers of an HTTP 200 response for GetTraderContext

type GetTraderContextResponse304Headers

type GetTraderContextResponse304Headers struct {
	ETag                *string
	RateLimitLimit      *int
	RateLimitRemaining  *int
	RateLimitReset      *int
	ServerTiming        *string
	XEffectiveQuery     *string
	XQueryIgnored       *string
	XRateLimitLimit     *int
	XRateLimitRemaining *int
	XRateLimitReset     *int
	XRequestId          *string
	XUsageAccounting    *string
}

GetTraderContextResponse304Headers the declared response headers of an HTTP 304 response for GetTraderContext

type GetTraderContextResponse429Headers

type GetTraderContextResponse429Headers struct {
	RateLimitLimit      *int
	RateLimitRemaining  *int
	RateLimitReset      *int
	RetryAfter          *int
	XRateLimitLimit     *int
	XRateLimitRemaining *int
	XRateLimitReset     *int
	XRequestId          *string
}

GetTraderContextResponse429Headers the declared response headers of an HTTP 429 response for GetTraderContext

type GetTraderContextResponse503Headers

type GetTraderContextResponse503Headers struct {
	RetryAfter *int
	XRequestId *string
}

GetTraderContextResponse503Headers the declared response headers of an HTTP 503 response for GetTraderContext

type GetTraderExportSnapshot200JSONResponseBodyObject

type GetTraderExportSnapshot200JSONResponseBodyObject string

GetTraderExportSnapshot200JSONResponseBodyObject defines parameters for GetTraderExportSnapshot.

const (
	GetTraderExportSnapshot200JSONResponseBodyObjectTraderExportSnapshot GetTraderExportSnapshot200JSONResponseBodyObject = "trader_export_snapshot"
)

Defines values for GetTraderExportSnapshot200JSONResponseBodyObject.

func (GetTraderExportSnapshot200JSONResponseBodyObject) Valid

Valid indicates whether the value is a known member of the GetTraderExportSnapshot200JSONResponseBodyObject enum.

type GetTraderExportSnapshotParams added in v0.3.0

type GetTraderExportSnapshotParams struct {
	// XQueryValidation Opt into strict query-name validation. The default is compatible: unknown names are ignored and reported in X-Query-Ignored. With strict, an unknown name returns 400 bad_request with error.reason unknown_query_parameter before the handler runs, including when its percent escape is incomplete.
	XQueryValidation *GetTraderExportSnapshotParamsXQueryValidation `json:"X-Query-Validation,omitempty"`
}

GetTraderExportSnapshotParams defines parameters for GetTraderExportSnapshot.

type GetTraderExportSnapshotParamsXQueryValidation added in v0.3.0

type GetTraderExportSnapshotParamsXQueryValidation string

GetTraderExportSnapshotParamsXQueryValidation defines parameters for GetTraderExportSnapshot.

const (
	GetTraderExportSnapshotParamsXQueryValidationStrict GetTraderExportSnapshotParamsXQueryValidation = "strict"
)

Defines values for GetTraderExportSnapshotParamsXQueryValidation.

func (GetTraderExportSnapshotParamsXQueryValidation) Valid added in v0.3.0

Valid indicates whether the value is a known member of the GetTraderExportSnapshotParamsXQueryValidation enum.

type GetTraderExportSnapshotResponse

type GetTraderExportSnapshotResponse struct {
	Body         []byte
	HTTPResponse *http.Response
	// JSON200 the response for an HTTP 200 `application/json` response
	JSON200 *struct {
		Data   TraderExportSnapshot                             `json:"data"`
		Meta   ResponseMeta                                     `json:"meta"`
		Object GetTraderExportSnapshot200JSONResponseBodyObject `json:"object"`
	}
	// JSON400 the response for an HTTP 400 `application/json` response
	JSON400 *ApiError
	// JSON401 the response for an HTTP 401 `application/json` response
	JSON401 *ApiError
	// JSON402 the response for an HTTP 402 `application/json` response
	JSON402 *ApiError
	// JSON403 the response for an HTTP 403 `application/json` response
	JSON403 *ApiError
	// JSON404 the response for an HTTP 404 `application/json` response
	JSON404 *ApiError
	// JSON408 the response for an HTTP 408 `application/json` response
	JSON408 *ApiError
	// JSON423 the response for an HTTP 423 `application/json` response
	JSON423 *ApiError
	// JSON429 the response for an HTTP 429 `application/json` response
	JSON429 *ApiError
	// JSON500 the response for an HTTP 500 `application/json` response
	JSON500 *ApiError
	// JSON503 the response for an HTTP 503 `application/json` response
	JSON503 *ApiError
	// Headers200 the parsed response headers for an HTTP 200 response
	Headers200 *GetTraderExportSnapshotResponse200Headers
	// Headers429 the parsed response headers for an HTTP 429 response
	Headers429 *GetTraderExportSnapshotResponse429Headers
	// Headers503 the parsed response headers for an HTTP 503 response
	Headers503 *GetTraderExportSnapshotResponse503Headers
}

func ParseGetTraderExportSnapshotResponse

func ParseGetTraderExportSnapshotResponse(rsp *http.Response) (*GetTraderExportSnapshotResponse, error)

ParseGetTraderExportSnapshotResponse parses an HTTP response from a GetTraderExportSnapshotWithResponse call

func (GetTraderExportSnapshotResponse) ContentType

func (r GetTraderExportSnapshotResponse) ContentType() string

ContentType is a convenience method to retrieve the Content-Type value from the HTTP response headers

func (GetTraderExportSnapshotResponse) GetBody

func (r GetTraderExportSnapshotResponse) GetBody() []byte

GetBody returns the raw response body bytes

func (GetTraderExportSnapshotResponse) GetJSON200

func (r GetTraderExportSnapshotResponse) GetJSON200() *struct {
	Data   TraderExportSnapshot                             `json:"data"`
	Meta   ResponseMeta                                     `json:"meta"`
	Object GetTraderExportSnapshot200JSONResponseBodyObject `json:"object"`
}

GetJSON200 returns the response for an HTTP 200 `application/json` response

func (GetTraderExportSnapshotResponse) GetJSON400

func (r GetTraderExportSnapshotResponse) GetJSON400() *ApiError

GetJSON400 returns the response for an HTTP 400 `application/json` response

func (GetTraderExportSnapshotResponse) GetJSON401

func (r GetTraderExportSnapshotResponse) GetJSON401() *ApiError

GetJSON401 returns the response for an HTTP 401 `application/json` response

func (GetTraderExportSnapshotResponse) GetJSON402

func (r GetTraderExportSnapshotResponse) GetJSON402() *ApiError

GetJSON402 returns the response for an HTTP 402 `application/json` response

func (GetTraderExportSnapshotResponse) GetJSON403

func (r GetTraderExportSnapshotResponse) GetJSON403() *ApiError

GetJSON403 returns the response for an HTTP 403 `application/json` response

func (GetTraderExportSnapshotResponse) GetJSON404

func (r GetTraderExportSnapshotResponse) GetJSON404() *ApiError

GetJSON404 returns the response for an HTTP 404 `application/json` response

func (GetTraderExportSnapshotResponse) GetJSON408 added in v0.2.0

func (r GetTraderExportSnapshotResponse) GetJSON408() *ApiError

GetJSON408 returns the response for an HTTP 408 `application/json` response

func (GetTraderExportSnapshotResponse) GetJSON423

func (r GetTraderExportSnapshotResponse) GetJSON423() *ApiError

GetJSON423 returns the response for an HTTP 423 `application/json` response

func (GetTraderExportSnapshotResponse) GetJSON429

func (r GetTraderExportSnapshotResponse) GetJSON429() *ApiError

GetJSON429 returns the response for an HTTP 429 `application/json` response

func (GetTraderExportSnapshotResponse) GetJSON500

func (r GetTraderExportSnapshotResponse) GetJSON500() *ApiError

GetJSON500 returns the response for an HTTP 500 `application/json` response

func (GetTraderExportSnapshotResponse) GetJSON503

func (r GetTraderExportSnapshotResponse) GetJSON503() *ApiError

GetJSON503 returns the response for an HTTP 503 `application/json` response

func (GetTraderExportSnapshotResponse) Status

Status returns HTTPResponse.Status

func (GetTraderExportSnapshotResponse) StatusCode

func (r GetTraderExportSnapshotResponse) StatusCode() int

StatusCode returns HTTPResponse.StatusCode

type GetTraderExportSnapshotResponse200Headers

type GetTraderExportSnapshotResponse200Headers struct {
	RateLimitLimit      *int
	RateLimitRemaining  *int
	RateLimitReset      *int
	ServerTiming        *string
	XEffectiveQuery     *string
	XQueryIgnored       *string
	XRateLimitLimit     *int
	XRateLimitRemaining *int
	XRateLimitReset     *int
	XRequestId          *string
	XUsageAccounting    *string
}

GetTraderExportSnapshotResponse200Headers the declared response headers of an HTTP 200 response for GetTraderExportSnapshot

type GetTraderExportSnapshotResponse429Headers

type GetTraderExportSnapshotResponse429Headers struct {
	RateLimitLimit      *int
	RateLimitRemaining  *int
	RateLimitReset      *int
	RetryAfter          *int
	XRateLimitLimit     *int
	XRateLimitRemaining *int
	XRateLimitReset     *int
	XRequestId          *string
}

GetTraderExportSnapshotResponse429Headers the declared response headers of an HTTP 429 response for GetTraderExportSnapshot

type GetTraderExportSnapshotResponse503Headers

type GetTraderExportSnapshotResponse503Headers struct {
	RetryAfter *int
	XRequestId *string
}

GetTraderExportSnapshotResponse503Headers the declared response headers of an HTTP 503 response for GetTraderExportSnapshot

type GetTraderExportStatusParams

type GetTraderExportStatusParams struct {
	// JobId Export job id returned by the submit route.
	JobId int64 `form:"job_id" json:"job_id"`

	// XQueryValidation Opt into strict query-name validation. The default is compatible: unknown names are ignored and reported in X-Query-Ignored. With strict, an unknown name returns 400 bad_request with error.reason unknown_query_parameter before the handler runs, including when its percent escape is incomplete.
	XQueryValidation *GetTraderExportStatusParamsXQueryValidation `json:"X-Query-Validation,omitempty"`
}

GetTraderExportStatusParams defines parameters for GetTraderExportStatus.

type GetTraderExportStatusParamsXQueryValidation added in v0.3.0

type GetTraderExportStatusParamsXQueryValidation string

GetTraderExportStatusParamsXQueryValidation defines parameters for GetTraderExportStatus.

const (
	GetTraderExportStatusParamsXQueryValidationStrict GetTraderExportStatusParamsXQueryValidation = "strict"
)

Defines values for GetTraderExportStatusParamsXQueryValidation.

func (GetTraderExportStatusParamsXQueryValidation) Valid added in v0.3.0

Valid indicates whether the value is a known member of the GetTraderExportStatusParamsXQueryValidation enum.

type GetTraderExportStatusResponse

type GetTraderExportStatusResponse struct {
	Body         []byte
	HTTPResponse *http.Response
	// JSON200 the response for an HTTP 200 `application/json` response
	JSON200 *TraderExportJob
	// JSON401 the response for an HTTP 401 `application/json` response
	JSON401 *ApiError
	// JSON402 the response for an HTTP 402 `application/json` response
	JSON402 *ApiError
	// JSON403 the response for an HTTP 403 `application/json` response
	JSON403 *ApiError
	// JSON404 the response for an HTTP 404 `application/json` response
	JSON404 *ApiError
	// JSON408 the response for an HTTP 408 `application/json` response
	JSON408 *ApiError
	// JSON423 the response for an HTTP 423 `application/json` response
	JSON423 *ApiError
	// JSON429 the response for an HTTP 429 `application/json` response
	JSON429 *ApiError
	// JSON500 the response for an HTTP 500 `application/json` response
	JSON500 *ApiError
	// JSON503 the response for an HTTP 503 `application/json` response
	JSON503 *ApiError
	// Headers200 the parsed response headers for an HTTP 200 response
	Headers200 *GetTraderExportStatusResponse200Headers
	// Headers429 the parsed response headers for an HTTP 429 response
	Headers429 *GetTraderExportStatusResponse429Headers
	// Headers503 the parsed response headers for an HTTP 503 response
	Headers503 *GetTraderExportStatusResponse503Headers
}

func ParseGetTraderExportStatusResponse

func ParseGetTraderExportStatusResponse(rsp *http.Response) (*GetTraderExportStatusResponse, error)

ParseGetTraderExportStatusResponse parses an HTTP response from a GetTraderExportStatusWithResponse call

func (GetTraderExportStatusResponse) ContentType

func (r GetTraderExportStatusResponse) ContentType() string

ContentType is a convenience method to retrieve the Content-Type value from the HTTP response headers

func (GetTraderExportStatusResponse) GetBody

func (r GetTraderExportStatusResponse) GetBody() []byte

GetBody returns the raw response body bytes

func (GetTraderExportStatusResponse) GetJSON200

GetJSON200 returns the response for an HTTP 200 `application/json` response

func (GetTraderExportStatusResponse) GetJSON401

func (r GetTraderExportStatusResponse) GetJSON401() *ApiError

GetJSON401 returns the response for an HTTP 401 `application/json` response

func (GetTraderExportStatusResponse) GetJSON402

func (r GetTraderExportStatusResponse) GetJSON402() *ApiError

GetJSON402 returns the response for an HTTP 402 `application/json` response

func (GetTraderExportStatusResponse) GetJSON403

func (r GetTraderExportStatusResponse) GetJSON403() *ApiError

GetJSON403 returns the response for an HTTP 403 `application/json` response

func (GetTraderExportStatusResponse) GetJSON404

func (r GetTraderExportStatusResponse) GetJSON404() *ApiError

GetJSON404 returns the response for an HTTP 404 `application/json` response

func (GetTraderExportStatusResponse) GetJSON408 added in v0.2.0

func (r GetTraderExportStatusResponse) GetJSON408() *ApiError

GetJSON408 returns the response for an HTTP 408 `application/json` response

func (GetTraderExportStatusResponse) GetJSON423

func (r GetTraderExportStatusResponse) GetJSON423() *ApiError

GetJSON423 returns the response for an HTTP 423 `application/json` response

func (GetTraderExportStatusResponse) GetJSON429

func (r GetTraderExportStatusResponse) GetJSON429() *ApiError

GetJSON429 returns the response for an HTTP 429 `application/json` response

func (GetTraderExportStatusResponse) GetJSON500

func (r GetTraderExportStatusResponse) GetJSON500() *ApiError

GetJSON500 returns the response for an HTTP 500 `application/json` response

func (GetTraderExportStatusResponse) GetJSON503

func (r GetTraderExportStatusResponse) GetJSON503() *ApiError

GetJSON503 returns the response for an HTTP 503 `application/json` response

func (GetTraderExportStatusResponse) Status

Status returns HTTPResponse.Status

func (GetTraderExportStatusResponse) StatusCode

func (r GetTraderExportStatusResponse) StatusCode() int

StatusCode returns HTTPResponse.StatusCode

type GetTraderExportStatusResponse200Headers

type GetTraderExportStatusResponse200Headers struct {
	RateLimitLimit      *int
	RateLimitRemaining  *int
	RateLimitReset      *int
	ServerTiming        *string
	XEffectiveQuery     *string
	XQueryIgnored       *string
	XRateLimitLimit     *int
	XRateLimitRemaining *int
	XRateLimitReset     *int
	XRequestId          *string
	XUsageAccounting    *string
}

GetTraderExportStatusResponse200Headers the declared response headers of an HTTP 200 response for GetTraderExportStatus

type GetTraderExportStatusResponse429Headers

type GetTraderExportStatusResponse429Headers struct {
	RateLimitLimit      *int
	RateLimitRemaining  *int
	RateLimitReset      *int
	RetryAfter          *int
	XRateLimitLimit     *int
	XRateLimitRemaining *int
	XRateLimitReset     *int
	XRequestId          *string
}

GetTraderExportStatusResponse429Headers the declared response headers of an HTTP 429 response for GetTraderExportStatus

type GetTraderExportStatusResponse503Headers

type GetTraderExportStatusResponse503Headers struct {
	RetryAfter *int
	XRequestId *string
}

GetTraderExportStatusResponse503Headers the declared response headers of an HTTP 503 response for GetTraderExportStatus

type GetTraderGradeAt200JSONResponseBodyObject added in v0.4.0

type GetTraderGradeAt200JSONResponseBodyObject string

GetTraderGradeAt200JSONResponseBodyObject defines parameters for GetTraderGradeAt.

const (
	GetTraderGradeAt200JSONResponseBodyObjectTraderGradeAt GetTraderGradeAt200JSONResponseBodyObject = "trader_grade_at"
)

Defines values for GetTraderGradeAt200JSONResponseBodyObject.

func (GetTraderGradeAt200JSONResponseBodyObject) Valid added in v0.4.0

Valid indicates whether the value is a known member of the GetTraderGradeAt200JSONResponseBodyObject enum.

type GetTraderGradeAtParams added in v0.4.0

type GetTraderGradeAtParams struct {
	// AsOf RFC3339 instant whose historically visible grade is requested. Future instants are refused. Send the trade or decision time, not the ranking date.
	AsOf time.Time `form:"as_of" json:"as_of"`

	// XQueryValidation Opt into strict query-name validation. The default is compatible: unknown names are ignored and reported in X-Query-Ignored. With strict, an unknown name returns 400 bad_request with error.reason unknown_query_parameter before the handler runs, including when its percent escape is incomplete.
	XQueryValidation *GetTraderGradeAtParamsXQueryValidation `json:"X-Query-Validation,omitempty"`

	// IfNoneMatch Conditional GET validator from a previous ETag. Matching values return 304 Not Modified with an empty body.
	IfNoneMatch *string `json:"If-None-Match,omitempty"`
}

GetTraderGradeAtParams defines parameters for GetTraderGradeAt.

type GetTraderGradeAtParamsXQueryValidation added in v0.4.0

type GetTraderGradeAtParamsXQueryValidation string

GetTraderGradeAtParamsXQueryValidation defines parameters for GetTraderGradeAt.

const (
	GetTraderGradeAtParamsXQueryValidationStrict GetTraderGradeAtParamsXQueryValidation = "strict"
)

Defines values for GetTraderGradeAtParamsXQueryValidation.

func (GetTraderGradeAtParamsXQueryValidation) Valid added in v0.4.0

Valid indicates whether the value is a known member of the GetTraderGradeAtParamsXQueryValidation enum.

type GetTraderGradeAtResponse added in v0.4.0

type GetTraderGradeAtResponse struct {
	Body         []byte
	HTTPResponse *http.Response
	// JSON200 the response for an HTTP 200 `application/json` response
	JSON200 *struct {
		Data   TraderGradeAt                             `json:"data"`
		Meta   ResponseMeta                              `json:"meta"`
		Object GetTraderGradeAt200JSONResponseBodyObject `json:"object"`
	}
	// JSON400 the response for an HTTP 400 `application/json` response
	JSON400 *ApiError
	// JSON401 the response for an HTTP 401 `application/json` response
	JSON401 *ApiError
	// JSON402 the response for an HTTP 402 `application/json` response
	JSON402 *ApiError
	// JSON403 the response for an HTTP 403 `application/json` response
	JSON403 *ApiError
	// JSON404 the response for an HTTP 404 `application/json` response
	JSON404 *ApiError
	// JSON408 the response for an HTTP 408 `application/json` response
	JSON408 *ApiError
	// JSON423 the response for an HTTP 423 `application/json` response
	JSON423 *ApiError
	// JSON429 the response for an HTTP 429 `application/json` response
	JSON429 *ApiError
	// JSON500 the response for an HTTP 500 `application/json` response
	JSON500 *ApiError
	// JSON503 the response for an HTTP 503 `application/json` response
	JSON503 *ApiError
	// Headers200 the parsed response headers for an HTTP 200 response
	Headers200 *GetTraderGradeAtResponse200Headers
	// Headers304 the parsed response headers for an HTTP 304 response
	Headers304 *GetTraderGradeAtResponse304Headers
	// Headers429 the parsed response headers for an HTTP 429 response
	Headers429 *GetTraderGradeAtResponse429Headers
	// Headers503 the parsed response headers for an HTTP 503 response
	Headers503 *GetTraderGradeAtResponse503Headers
}

func ParseGetTraderGradeAtResponse added in v0.4.0

func ParseGetTraderGradeAtResponse(rsp *http.Response) (*GetTraderGradeAtResponse, error)

ParseGetTraderGradeAtResponse parses an HTTP response from a GetTraderGradeAtWithResponse call

func (GetTraderGradeAtResponse) ContentType added in v0.4.0

func (r GetTraderGradeAtResponse) ContentType() string

ContentType is a convenience method to retrieve the Content-Type value from the HTTP response headers

func (GetTraderGradeAtResponse) GetBody added in v0.4.0

func (r GetTraderGradeAtResponse) GetBody() []byte

GetBody returns the raw response body bytes

func (GetTraderGradeAtResponse) GetJSON200 added in v0.4.0

func (r GetTraderGradeAtResponse) GetJSON200() *struct {
	Data   TraderGradeAt                             `json:"data"`
	Meta   ResponseMeta                              `json:"meta"`
	Object GetTraderGradeAt200JSONResponseBodyObject `json:"object"`
}

GetJSON200 returns the response for an HTTP 200 `application/json` response

func (GetTraderGradeAtResponse) GetJSON400 added in v0.4.0

func (r GetTraderGradeAtResponse) GetJSON400() *ApiError

GetJSON400 returns the response for an HTTP 400 `application/json` response

func (GetTraderGradeAtResponse) GetJSON401 added in v0.4.0

func (r GetTraderGradeAtResponse) GetJSON401() *ApiError

GetJSON401 returns the response for an HTTP 401 `application/json` response

func (GetTraderGradeAtResponse) GetJSON402 added in v0.4.0

func (r GetTraderGradeAtResponse) GetJSON402() *ApiError

GetJSON402 returns the response for an HTTP 402 `application/json` response

func (GetTraderGradeAtResponse) GetJSON403 added in v0.4.0

func (r GetTraderGradeAtResponse) GetJSON403() *ApiError

GetJSON403 returns the response for an HTTP 403 `application/json` response

func (GetTraderGradeAtResponse) GetJSON404 added in v0.4.0

func (r GetTraderGradeAtResponse) GetJSON404() *ApiError

GetJSON404 returns the response for an HTTP 404 `application/json` response

func (GetTraderGradeAtResponse) GetJSON408 added in v0.4.0

func (r GetTraderGradeAtResponse) GetJSON408() *ApiError

GetJSON408 returns the response for an HTTP 408 `application/json` response

func (GetTraderGradeAtResponse) GetJSON423 added in v0.4.0

func (r GetTraderGradeAtResponse) GetJSON423() *ApiError

GetJSON423 returns the response for an HTTP 423 `application/json` response

func (GetTraderGradeAtResponse) GetJSON429 added in v0.4.0

func (r GetTraderGradeAtResponse) GetJSON429() *ApiError

GetJSON429 returns the response for an HTTP 429 `application/json` response

func (GetTraderGradeAtResponse) GetJSON500 added in v0.4.0

func (r GetTraderGradeAtResponse) GetJSON500() *ApiError

GetJSON500 returns the response for an HTTP 500 `application/json` response

func (GetTraderGradeAtResponse) GetJSON503 added in v0.4.0

func (r GetTraderGradeAtResponse) GetJSON503() *ApiError

GetJSON503 returns the response for an HTTP 503 `application/json` response

func (GetTraderGradeAtResponse) Status added in v0.4.0

func (r GetTraderGradeAtResponse) Status() string

Status returns HTTPResponse.Status

func (GetTraderGradeAtResponse) StatusCode added in v0.4.0

func (r GetTraderGradeAtResponse) StatusCode() int

StatusCode returns HTTPResponse.StatusCode

type GetTraderGradeAtResponse200Headers added in v0.4.0

type GetTraderGradeAtResponse200Headers struct {
	ETag                *string
	RateLimitLimit      *int
	RateLimitRemaining  *int
	RateLimitReset      *int
	ServerTiming        *string
	XEffectiveQuery     *string
	XQueryIgnored       *string
	XRateLimitLimit     *int
	XRateLimitRemaining *int
	XRateLimitReset     *int
	XRequestId          *string
	XUsageAccounting    *string
}

GetTraderGradeAtResponse200Headers the declared response headers of an HTTP 200 response for GetTraderGradeAt

type GetTraderGradeAtResponse304Headers added in v0.4.0

type GetTraderGradeAtResponse304Headers struct {
	ETag                *string
	RateLimitLimit      *int
	RateLimitRemaining  *int
	RateLimitReset      *int
	ServerTiming        *string
	XEffectiveQuery     *string
	XQueryIgnored       *string
	XRateLimitLimit     *int
	XRateLimitRemaining *int
	XRateLimitReset     *int
	XRequestId          *string
	XUsageAccounting    *string
}

GetTraderGradeAtResponse304Headers the declared response headers of an HTTP 304 response for GetTraderGradeAt

type GetTraderGradeAtResponse429Headers added in v0.4.0

type GetTraderGradeAtResponse429Headers struct {
	RateLimitLimit      *int
	RateLimitRemaining  *int
	RateLimitReset      *int
	RetryAfter          *int
	XRateLimitLimit     *int
	XRateLimitRemaining *int
	XRateLimitReset     *int
	XRequestId          *string
}

GetTraderGradeAtResponse429Headers the declared response headers of an HTTP 429 response for GetTraderGradeAt

type GetTraderGradeAtResponse503Headers added in v0.4.0

type GetTraderGradeAtResponse503Headers struct {
	RetryAfter *int
	XRequestId *string
}

GetTraderGradeAtResponse503Headers the declared response headers of an HTTP 503 response for GetTraderGradeAt

type GetTraderParams

type GetTraderParams struct {
	// Expand Include heavy fields and trust metadata. Repeatable: strategy, categories, quant_metrics, trust.
	Expand *[]GetTraderParamsExpand `form:"expand,omitempty" json:"expand,omitempty"`

	// MaxAgeS Opt into a whole-response freshness ceiling in seconds. The server returns 200 only when data_quality.status is fresh and data_quality.as_of is no older than this value; otherwise it returns 409 with error.reason=freshness_ceiling_unsatisfied. No refresh or alternate read is attempted.
	MaxAgeS *int64 `form:"max_age_s,omitempty" json:"max_age_s,omitempty"`

	// XQueryValidation Opt into strict query-name validation. The default is compatible: unknown names are ignored and reported in X-Query-Ignored. With strict, an unknown name returns 400 bad_request with error.reason unknown_query_parameter before the handler runs, including when its percent escape is incomplete.
	XQueryValidation *GetTraderParamsXQueryValidation `json:"X-Query-Validation,omitempty"`

	// IfNoneMatch Conditional GET validator from a previous ETag. Matching values return 304 Not Modified with an empty body.
	IfNoneMatch *string `json:"If-None-Match,omitempty"`
}

GetTraderParams defines parameters for GetTrader.

type GetTraderParamsExpand

type GetTraderParamsExpand string

GetTraderParamsExpand defines parameters for GetTrader.

const (
	GetTraderParamsExpandCategories   GetTraderParamsExpand = "categories"
	GetTraderParamsExpandQuantMetrics GetTraderParamsExpand = "quant_metrics"
	GetTraderParamsExpandStrategy     GetTraderParamsExpand = "strategy"
	GetTraderParamsExpandTrust        GetTraderParamsExpand = "trust"
)

Defines values for GetTraderParamsExpand.

func (GetTraderParamsExpand) Valid

func (e GetTraderParamsExpand) Valid() bool

Valid indicates whether the value is a known member of the GetTraderParamsExpand enum.

type GetTraderParamsXQueryValidation added in v0.3.0

type GetTraderParamsXQueryValidation string

GetTraderParamsXQueryValidation defines parameters for GetTrader.

const (
	GetTraderParamsXQueryValidationStrict GetTraderParamsXQueryValidation = "strict"
)

Defines values for GetTraderParamsXQueryValidation.

func (GetTraderParamsXQueryValidation) Valid added in v0.3.0

Valid indicates whether the value is a known member of the GetTraderParamsXQueryValidation enum.

type GetTraderPnl200JSONResponseBodyObject

type GetTraderPnl200JSONResponseBodyObject string

GetTraderPnl200JSONResponseBodyObject defines parameters for GetTraderPnl.

const (
	GetTraderPnl200JSONResponseBodyObjectTraderPnl GetTraderPnl200JSONResponseBodyObject = "trader_pnl"
)

Defines values for GetTraderPnl200JSONResponseBodyObject.

func (GetTraderPnl200JSONResponseBodyObject) Valid

Valid indicates whether the value is a known member of the GetTraderPnl200JSONResponseBodyObject enum.

type GetTraderPnlParams added in v0.3.0

type GetTraderPnlParams struct {
	// From Inclusive UTC calendar-date lower bound in YYYY-MM-DD form for the daily series (entries and drawdown). Omit for the whole stored history. A value that is not a calendar date, or a from later than to, returns 400 bad_request with error.param from. Does not change stats, monthly or year_totals, which stay defined over the full history.
	From *string `form:"from,omitempty" json:"from,omitempty"`

	// To Inclusive UTC calendar-date upper bound in YYYY-MM-DD form for the daily series (entries and drawdown). Omit for the whole stored history. A value that is not a calendar date returns 400 bad_request with error.param to. Does not change stats, monthly or year_totals.
	To *string `form:"to,omitempty" json:"to,omitempty"`

	// Sections Which sections of the object to return. Repeatable and comma-separated: entries, stats, monthly, year_totals, drawdown. Omit it, or send it empty, for all five. A section left out is absent from data. An unrecognized name returns 400 bad_request with error.param sections rather than being ignored, so a typo cannot look like a successful request that silently dropped the section you came for.
	Sections *[]GetTraderPnlParamsSections `form:"sections,omitempty" json:"sections,omitempty"`

	// XQueryValidation Opt into strict query-name validation. The default is compatible: unknown names are ignored and reported in X-Query-Ignored. With strict, an unknown name returns 400 bad_request with error.reason unknown_query_parameter before the handler runs, including when its percent escape is incomplete.
	XQueryValidation *GetTraderPnlParamsXQueryValidation `json:"X-Query-Validation,omitempty"`
}

GetTraderPnlParams defines parameters for GetTraderPnl.

type GetTraderPnlParamsSections added in v0.4.0

type GetTraderPnlParamsSections string

GetTraderPnlParamsSections defines parameters for GetTraderPnl.

const (
	GetTraderPnlParamsSectionsDrawdown   GetTraderPnlParamsSections = "drawdown"
	GetTraderPnlParamsSectionsEntries    GetTraderPnlParamsSections = "entries"
	GetTraderPnlParamsSectionsMonthly    GetTraderPnlParamsSections = "monthly"
	GetTraderPnlParamsSectionsStats      GetTraderPnlParamsSections = "stats"
	GetTraderPnlParamsSectionsYearTotals GetTraderPnlParamsSections = "year_totals"
)

Defines values for GetTraderPnlParamsSections.

func (GetTraderPnlParamsSections) Valid added in v0.4.0

func (e GetTraderPnlParamsSections) Valid() bool

Valid indicates whether the value is a known member of the GetTraderPnlParamsSections enum.

type GetTraderPnlParamsXQueryValidation added in v0.3.0

type GetTraderPnlParamsXQueryValidation string

GetTraderPnlParamsXQueryValidation defines parameters for GetTraderPnl.

const (
	GetTraderPnlParamsXQueryValidationStrict GetTraderPnlParamsXQueryValidation = "strict"
)

Defines values for GetTraderPnlParamsXQueryValidation.

func (GetTraderPnlParamsXQueryValidation) Valid added in v0.3.0

Valid indicates whether the value is a known member of the GetTraderPnlParamsXQueryValidation enum.

type GetTraderPnlResponse

type GetTraderPnlResponse struct {
	Body         []byte
	HTTPResponse *http.Response
	// JSON200 the response for an HTTP 200 `application/json` response
	JSON200 *struct {
		// Data 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.
		Data   TraderPnl                             `json:"data"`
		Meta   ResponseMeta                          `json:"meta"`
		Object GetTraderPnl200JSONResponseBodyObject `json:"object"`
	}
	// JSON400 the response for an HTTP 400 `application/json` response
	JSON400 *ApiError
	// JSON401 the response for an HTTP 401 `application/json` response
	JSON401 *ApiError
	// JSON402 the response for an HTTP 402 `application/json` response
	JSON402 *ApiError
	// JSON403 the response for an HTTP 403 `application/json` response
	JSON403 *ApiError
	// JSON404 the response for an HTTP 404 `application/json` response
	JSON404 *ApiError
	// JSON408 the response for an HTTP 408 `application/json` response
	JSON408 *ApiError
	// JSON423 the response for an HTTP 423 `application/json` response
	JSON423 *ApiError
	// JSON429 the response for an HTTP 429 `application/json` response
	JSON429 *ApiError
	// JSON500 the response for an HTTP 500 `application/json` response
	JSON500 *ApiError
	// JSON503 the response for an HTTP 503 `application/json` response
	JSON503 *ApiError
	// Headers200 the parsed response headers for an HTTP 200 response
	Headers200 *GetTraderPnlResponse200Headers
	// Headers304 the parsed response headers for an HTTP 304 response
	Headers304 *GetTraderPnlResponse304Headers
	// Headers429 the parsed response headers for an HTTP 429 response
	Headers429 *GetTraderPnlResponse429Headers
	// Headers503 the parsed response headers for an HTTP 503 response
	Headers503 *GetTraderPnlResponse503Headers
}

func ParseGetTraderPnlResponse

func ParseGetTraderPnlResponse(rsp *http.Response) (*GetTraderPnlResponse, error)

ParseGetTraderPnlResponse parses an HTTP response from a GetTraderPnlWithResponse call

func (GetTraderPnlResponse) ContentType

func (r GetTraderPnlResponse) ContentType() string

ContentType is a convenience method to retrieve the Content-Type value from the HTTP response headers

func (GetTraderPnlResponse) GetBody

func (r GetTraderPnlResponse) GetBody() []byte

GetBody returns the raw response body bytes

func (GetTraderPnlResponse) GetJSON200

func (r GetTraderPnlResponse) GetJSON200() *struct {
	// Data 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.
	Data   TraderPnl                             `json:"data"`
	Meta   ResponseMeta                          `json:"meta"`
	Object GetTraderPnl200JSONResponseBodyObject `json:"object"`
}

GetJSON200 returns the response for an HTTP 200 `application/json` response

func (GetTraderPnlResponse) GetJSON400

func (r GetTraderPnlResponse) GetJSON400() *ApiError

GetJSON400 returns the response for an HTTP 400 `application/json` response

func (GetTraderPnlResponse) GetJSON401

func (r GetTraderPnlResponse) GetJSON401() *ApiError

GetJSON401 returns the response for an HTTP 401 `application/json` response

func (GetTraderPnlResponse) GetJSON402

func (r GetTraderPnlResponse) GetJSON402() *ApiError

GetJSON402 returns the response for an HTTP 402 `application/json` response

func (GetTraderPnlResponse) GetJSON403

func (r GetTraderPnlResponse) GetJSON403() *ApiError

GetJSON403 returns the response for an HTTP 403 `application/json` response

func (GetTraderPnlResponse) GetJSON404

func (r GetTraderPnlResponse) GetJSON404() *ApiError

GetJSON404 returns the response for an HTTP 404 `application/json` response

func (GetTraderPnlResponse) GetJSON408 added in v0.2.0

func (r GetTraderPnlResponse) GetJSON408() *ApiError

GetJSON408 returns the response for an HTTP 408 `application/json` response

func (GetTraderPnlResponse) GetJSON423

func (r GetTraderPnlResponse) GetJSON423() *ApiError

GetJSON423 returns the response for an HTTP 423 `application/json` response

func (GetTraderPnlResponse) GetJSON429

func (r GetTraderPnlResponse) GetJSON429() *ApiError

GetJSON429 returns the response for an HTTP 429 `application/json` response

func (GetTraderPnlResponse) GetJSON500 added in v0.4.0

func (r GetTraderPnlResponse) GetJSON500() *ApiError

GetJSON500 returns the response for an HTTP 500 `application/json` response

func (GetTraderPnlResponse) GetJSON503

func (r GetTraderPnlResponse) GetJSON503() *ApiError

GetJSON503 returns the response for an HTTP 503 `application/json` response

func (GetTraderPnlResponse) Status

func (r GetTraderPnlResponse) Status() string

Status returns HTTPResponse.Status

func (GetTraderPnlResponse) StatusCode

func (r GetTraderPnlResponse) StatusCode() int

StatusCode returns HTTPResponse.StatusCode

type GetTraderPnlResponse200Headers

type GetTraderPnlResponse200Headers struct {
	ETag                *string
	RateLimitLimit      *int
	RateLimitRemaining  *int
	RateLimitReset      *int
	ServerTiming        *string
	XEffectiveQuery     *string
	XQueryIgnored       *string
	XRateLimitLimit     *int
	XRateLimitRemaining *int
	XRateLimitReset     *int
	XRequestId          *string
	XUsageAccounting    *string
}

GetTraderPnlResponse200Headers the declared response headers of an HTTP 200 response for GetTraderPnl

type GetTraderPnlResponse304Headers

type GetTraderPnlResponse304Headers struct {
	ETag                *string
	RateLimitLimit      *int
	RateLimitRemaining  *int
	RateLimitReset      *int
	ServerTiming        *string
	XEffectiveQuery     *string
	XQueryIgnored       *string
	XRateLimitLimit     *int
	XRateLimitRemaining *int
	XRateLimitReset     *int
	XRequestId          *string
	XUsageAccounting    *string
}

GetTraderPnlResponse304Headers the declared response headers of an HTTP 304 response for GetTraderPnl

type GetTraderPnlResponse429Headers

type GetTraderPnlResponse429Headers struct {
	RateLimitLimit      *int
	RateLimitRemaining  *int
	RateLimitReset      *int
	RetryAfter          *int
	XRateLimitLimit     *int
	XRateLimitRemaining *int
	XRateLimitReset     *int
	XRequestId          *string
}

GetTraderPnlResponse429Headers the declared response headers of an HTTP 429 response for GetTraderPnl

type GetTraderPnlResponse503Headers

type GetTraderPnlResponse503Headers struct {
	RetryAfter *int
	XRequestId *string
}

GetTraderPnlResponse503Headers the declared response headers of an HTTP 503 response for GetTraderPnl

type GetTraderResponse

type GetTraderResponse struct {
	Body         []byte
	HTTPResponse *http.Response
	// JSON200 the response for an HTTP 200 `application/json` response
	JSON200 *struct {
		Data   Trader                             `json:"data"`
		Meta   ResponseMeta                       `json:"meta"`
		Object GetTrader200JSONResponseBodyObject `json:"object"`
	}
	// JSON400 the response for an HTTP 400 `application/json` response
	JSON400 *ApiError
	// JSON401 the response for an HTTP 401 `application/json` response
	JSON401 *ApiError
	// JSON402 the response for an HTTP 402 `application/json` response
	JSON402 *ApiError
	// JSON403 the response for an HTTP 403 `application/json` response
	JSON403 *ApiError
	// JSON404 the response for an HTTP 404 `application/json` response
	JSON404 *ApiError
	// JSON408 the response for an HTTP 408 `application/json` response
	JSON408 *ApiError
	// JSON409 the response for an HTTP 409 `application/json` response
	JSON409 *ApiError
	// JSON423 the response for an HTTP 423 `application/json` response
	JSON423 *ApiError
	// JSON429 the response for an HTTP 429 `application/json` response
	JSON429 *ApiError
	// JSON500 the response for an HTTP 500 `application/json` response
	JSON500 *ApiError
	// JSON503 the response for an HTTP 503 `application/json` response
	JSON503 *ApiError
	// Headers200 the parsed response headers for an HTTP 200 response
	Headers200 *GetTraderResponse200Headers
	// Headers304 the parsed response headers for an HTTP 304 response
	Headers304 *GetTraderResponse304Headers
	// Headers429 the parsed response headers for an HTTP 429 response
	Headers429 *GetTraderResponse429Headers
	// Headers503 the parsed response headers for an HTTP 503 response
	Headers503 *GetTraderResponse503Headers
}

func ParseGetTraderResponse

func ParseGetTraderResponse(rsp *http.Response) (*GetTraderResponse, error)

ParseGetTraderResponse parses an HTTP response from a GetTraderWithResponse call

func (GetTraderResponse) ContentType

func (r GetTraderResponse) ContentType() string

ContentType is a convenience method to retrieve the Content-Type value from the HTTP response headers

func (GetTraderResponse) GetBody

func (r GetTraderResponse) GetBody() []byte

GetBody returns the raw response body bytes

func (GetTraderResponse) GetJSON200

func (r GetTraderResponse) GetJSON200() *struct {
	Data   Trader                             `json:"data"`
	Meta   ResponseMeta                       `json:"meta"`
	Object GetTrader200JSONResponseBodyObject `json:"object"`
}

GetJSON200 returns the response for an HTTP 200 `application/json` response

func (GetTraderResponse) GetJSON400

func (r GetTraderResponse) GetJSON400() *ApiError

GetJSON400 returns the response for an HTTP 400 `application/json` response

func (GetTraderResponse) GetJSON401

func (r GetTraderResponse) GetJSON401() *ApiError

GetJSON401 returns the response for an HTTP 401 `application/json` response

func (GetTraderResponse) GetJSON402

func (r GetTraderResponse) GetJSON402() *ApiError

GetJSON402 returns the response for an HTTP 402 `application/json` response

func (GetTraderResponse) GetJSON403

func (r GetTraderResponse) GetJSON403() *ApiError

GetJSON403 returns the response for an HTTP 403 `application/json` response

func (GetTraderResponse) GetJSON404 added in v0.4.0

func (r GetTraderResponse) GetJSON404() *ApiError

GetJSON404 returns the response for an HTTP 404 `application/json` response

func (GetTraderResponse) GetJSON408 added in v0.2.0

func (r GetTraderResponse) GetJSON408() *ApiError

GetJSON408 returns the response for an HTTP 408 `application/json` response

func (GetTraderResponse) GetJSON409 added in v0.4.0

func (r GetTraderResponse) GetJSON409() *ApiError

GetJSON409 returns the response for an HTTP 409 `application/json` response

func (GetTraderResponse) GetJSON423

func (r GetTraderResponse) GetJSON423() *ApiError

GetJSON423 returns the response for an HTTP 423 `application/json` response

func (GetTraderResponse) GetJSON429

func (r GetTraderResponse) GetJSON429() *ApiError

GetJSON429 returns the response for an HTTP 429 `application/json` response

func (GetTraderResponse) GetJSON500

func (r GetTraderResponse) GetJSON500() *ApiError

GetJSON500 returns the response for an HTTP 500 `application/json` response

func (GetTraderResponse) GetJSON503

func (r GetTraderResponse) GetJSON503() *ApiError

GetJSON503 returns the response for an HTTP 503 `application/json` response

func (GetTraderResponse) Status

func (r GetTraderResponse) Status() string

Status returns HTTPResponse.Status

func (GetTraderResponse) StatusCode

func (r GetTraderResponse) StatusCode() int

StatusCode returns HTTPResponse.StatusCode

type GetTraderResponse200Headers

type GetTraderResponse200Headers struct {
	ETag                *string
	RateLimitLimit      *int
	RateLimitRemaining  *int
	RateLimitReset      *int
	ServerTiming        *string
	XEffectiveQuery     *string
	XQueryIgnored       *string
	XRateLimitLimit     *int
	XRateLimitRemaining *int
	XRateLimitReset     *int
	XRequestId          *string
	XUsageAccounting    *string
}

GetTraderResponse200Headers the declared response headers of an HTTP 200 response for GetTrader

type GetTraderResponse304Headers

type GetTraderResponse304Headers struct {
	ETag                *string
	RateLimitLimit      *int
	RateLimitRemaining  *int
	RateLimitReset      *int
	ServerTiming        *string
	XEffectiveQuery     *string
	XQueryIgnored       *string
	XRateLimitLimit     *int
	XRateLimitRemaining *int
	XRateLimitReset     *int
	XRequestId          *string
	XUsageAccounting    *string
}

GetTraderResponse304Headers the declared response headers of an HTTP 304 response for GetTrader

type GetTraderResponse429Headers

type GetTraderResponse429Headers struct {
	RateLimitLimit      *int
	RateLimitRemaining  *int
	RateLimitReset      *int
	RetryAfter          *int
	XRateLimitLimit     *int
	XRateLimitRemaining *int
	XRateLimitReset     *int
	XRequestId          *string
}

GetTraderResponse429Headers the declared response headers of an HTTP 429 response for GetTrader

type GetTraderResponse503Headers

type GetTraderResponse503Headers struct {
	RetryAfter *int
	XRequestId *string
}

GetTraderResponse503Headers the declared response headers of an HTTP 503 response for GetTrader

type GetUsageParams added in v0.3.0

type GetUsageParams struct {
	// XQueryValidation Opt into strict query-name validation. The default is compatible: unknown names are ignored and reported in X-Query-Ignored. With strict, an unknown name returns 400 bad_request with error.reason unknown_query_parameter before the handler runs, including when its percent escape is incomplete.
	XQueryValidation *GetUsageParamsXQueryValidation `json:"X-Query-Validation,omitempty"`
}

GetUsageParams defines parameters for GetUsage.

type GetUsageParamsXQueryValidation added in v0.3.0

type GetUsageParamsXQueryValidation string

GetUsageParamsXQueryValidation defines parameters for GetUsage.

const (
	GetUsageParamsXQueryValidationStrict GetUsageParamsXQueryValidation = "strict"
)

Defines values for GetUsageParamsXQueryValidation.

func (GetUsageParamsXQueryValidation) Valid added in v0.3.0

Valid indicates whether the value is a known member of the GetUsageParamsXQueryValidation enum.

type GetUsageResponse

type GetUsageResponse struct {
	Body         []byte
	HTTPResponse *http.Response
	// JSON200 the response for an HTTP 200 `application/json` response
	JSON200 *Usage
	// JSON401 the response for an HTTP 401 `application/json` response
	JSON401 *ApiError
	// JSON403 the response for an HTTP 403 `application/json` response
	JSON403 *ApiError
	// JSON423 the response for an HTTP 423 `application/json` response
	JSON423 *ApiError
	// JSON429 the response for an HTTP 429 `application/json` response
	JSON429 *ApiError
	// JSON500 the response for an HTTP 500 `application/json` response
	JSON500 *ApiError
	// JSON503 the response for an HTTP 503 `application/json` response
	JSON503 *ApiError
	// Headers200 the parsed response headers for an HTTP 200 response
	Headers200 *GetUsageResponse200Headers
	// Headers429 the parsed response headers for an HTTP 429 response
	Headers429 *GetUsageResponse429Headers
	// Headers503 the parsed response headers for an HTTP 503 response
	Headers503 *GetUsageResponse503Headers
}

func ParseGetUsageResponse

func ParseGetUsageResponse(rsp *http.Response) (*GetUsageResponse, error)

ParseGetUsageResponse parses an HTTP response from a GetUsageWithResponse call

func (GetUsageResponse) ContentType

func (r GetUsageResponse) ContentType() string

ContentType is a convenience method to retrieve the Content-Type value from the HTTP response headers

func (GetUsageResponse) GetBody

func (r GetUsageResponse) GetBody() []byte

GetBody returns the raw response body bytes

func (GetUsageResponse) GetJSON200

func (r GetUsageResponse) GetJSON200() *Usage

GetJSON200 returns the response for an HTTP 200 `application/json` response

func (GetUsageResponse) GetJSON401

func (r GetUsageResponse) GetJSON401() *ApiError

GetJSON401 returns the response for an HTTP 401 `application/json` response

func (GetUsageResponse) GetJSON403

func (r GetUsageResponse) GetJSON403() *ApiError

GetJSON403 returns the response for an HTTP 403 `application/json` response

func (GetUsageResponse) GetJSON423

func (r GetUsageResponse) GetJSON423() *ApiError

GetJSON423 returns the response for an HTTP 423 `application/json` response

func (GetUsageResponse) GetJSON429

func (r GetUsageResponse) GetJSON429() *ApiError

GetJSON429 returns the response for an HTTP 429 `application/json` response

func (GetUsageResponse) GetJSON500 added in v0.4.0

func (r GetUsageResponse) GetJSON500() *ApiError

GetJSON500 returns the response for an HTTP 500 `application/json` response

func (GetUsageResponse) GetJSON503

func (r GetUsageResponse) GetJSON503() *ApiError

GetJSON503 returns the response for an HTTP 503 `application/json` response

func (GetUsageResponse) Status

func (r GetUsageResponse) Status() string

Status returns HTTPResponse.Status

func (GetUsageResponse) StatusCode

func (r GetUsageResponse) StatusCode() int

StatusCode returns HTTPResponse.StatusCode

type GetUsageResponse200Headers

type GetUsageResponse200Headers struct {
	RateLimitLimit         *int
	RateLimitRemaining     *int
	RateLimitReset         *int
	ServerTiming           *string
	XEffectiveQuery        *string
	XMonthlyQuotaLimit     *int
	XMonthlyQuotaRemaining *int
	XMonthlyQuotaReset     *int
	XQueryIgnored          *string
	XRateLimitLimit        *int
	XRateLimitRemaining    *int
	XRateLimitReset        *int
	XRequestId             *string
}

GetUsageResponse200Headers the declared response headers of an HTTP 200 response for GetUsage

type GetUsageResponse429Headers

type GetUsageResponse429Headers struct {
	RateLimitLimit      *int
	RateLimitRemaining  *int
	RateLimitReset      *int
	RetryAfter          *int
	XRateLimitLimit     *int
	XRateLimitRemaining *int
	XRateLimitReset     *int
	XRequestId          *string
}

GetUsageResponse429Headers the declared response headers of an HTTP 429 response for GetUsage

type GetUsageResponse503Headers

type GetUsageResponse503Headers struct {
	RetryAfter *int
	XRequestId *string
}

GetUsageResponse503Headers the declared response headers of an HTTP 503 response for GetUsage

type GetWebhook200JSONResponseBodyObject

type GetWebhook200JSONResponseBodyObject string

GetWebhook200JSONResponseBodyObject defines parameters for GetWebhook.

const (
	GetWebhook200JSONResponseBodyObjectWebhook GetWebhook200JSONResponseBodyObject = "webhook"
)

Defines values for GetWebhook200JSONResponseBodyObject.

func (GetWebhook200JSONResponseBodyObject) Valid

Valid indicates whether the value is a known member of the GetWebhook200JSONResponseBodyObject enum.

type GetWebhookParams added in v0.3.0

type GetWebhookParams struct {
	// XQueryValidation Opt into strict query-name validation. The default is compatible: unknown names are ignored and reported in X-Query-Ignored. With strict, an unknown name returns 400 bad_request with error.reason unknown_query_parameter before the handler runs, including when its percent escape is incomplete.
	XQueryValidation *GetWebhookParamsXQueryValidation `json:"X-Query-Validation,omitempty"`
}

GetWebhookParams defines parameters for GetWebhook.

type GetWebhookParamsXQueryValidation added in v0.3.0

type GetWebhookParamsXQueryValidation string

GetWebhookParamsXQueryValidation defines parameters for GetWebhook.

const (
	GetWebhookParamsXQueryValidationStrict GetWebhookParamsXQueryValidation = "strict"
)

Defines values for GetWebhookParamsXQueryValidation.

func (GetWebhookParamsXQueryValidation) Valid added in v0.3.0

Valid indicates whether the value is a known member of the GetWebhookParamsXQueryValidation enum.

type GetWebhookResponse

type GetWebhookResponse struct {
	Body         []byte
	HTTPResponse *http.Response
	// JSON200 the response for an HTTP 200 `application/json` response
	JSON200 *struct {
		Data   WebhookEndpoint                     `json:"data"`
		Meta   ResponseMeta                        `json:"meta"`
		Object GetWebhook200JSONResponseBodyObject `json:"object"`
	}
	// JSON401 the response for an HTTP 401 `application/json` response
	JSON401 *ApiError
	// JSON402 the response for an HTTP 402 `application/json` response
	JSON402 *ApiError
	// JSON403 the response for an HTTP 403 `application/json` response
	JSON403 *ApiError
	// JSON404 the response for an HTTP 404 `application/json` response
	JSON404 *ApiError
	// JSON408 the response for an HTTP 408 `application/json` response
	JSON408 *ApiError
	// JSON423 the response for an HTTP 423 `application/json` response
	JSON423 *ApiError
	// JSON429 the response for an HTTP 429 `application/json` response
	JSON429 *ApiError
	// JSON500 the response for an HTTP 500 `application/json` response
	JSON500 *ApiError
	// JSON503 the response for an HTTP 503 `application/json` response
	JSON503 *ApiError
	// Headers200 the parsed response headers for an HTTP 200 response
	Headers200 *GetWebhookResponse200Headers
	// Headers429 the parsed response headers for an HTTP 429 response
	Headers429 *GetWebhookResponse429Headers
	// Headers503 the parsed response headers for an HTTP 503 response
	Headers503 *GetWebhookResponse503Headers
}

func ParseGetWebhookResponse

func ParseGetWebhookResponse(rsp *http.Response) (*GetWebhookResponse, error)

ParseGetWebhookResponse parses an HTTP response from a GetWebhookWithResponse call

func (GetWebhookResponse) ContentType

func (r GetWebhookResponse) ContentType() string

ContentType is a convenience method to retrieve the Content-Type value from the HTTP response headers

func (GetWebhookResponse) GetBody

func (r GetWebhookResponse) GetBody() []byte

GetBody returns the raw response body bytes

func (GetWebhookResponse) GetJSON200

func (r GetWebhookResponse) GetJSON200() *struct {
	Data   WebhookEndpoint                     `json:"data"`
	Meta   ResponseMeta                        `json:"meta"`
	Object GetWebhook200JSONResponseBodyObject `json:"object"`
}

GetJSON200 returns the response for an HTTP 200 `application/json` response

func (GetWebhookResponse) GetJSON401

func (r GetWebhookResponse) GetJSON401() *ApiError

GetJSON401 returns the response for an HTTP 401 `application/json` response

func (GetWebhookResponse) GetJSON402

func (r GetWebhookResponse) GetJSON402() *ApiError

GetJSON402 returns the response for an HTTP 402 `application/json` response

func (GetWebhookResponse) GetJSON403

func (r GetWebhookResponse) GetJSON403() *ApiError

GetJSON403 returns the response for an HTTP 403 `application/json` response

func (GetWebhookResponse) GetJSON404

func (r GetWebhookResponse) GetJSON404() *ApiError

GetJSON404 returns the response for an HTTP 404 `application/json` response

func (GetWebhookResponse) GetJSON408 added in v0.2.0

func (r GetWebhookResponse) GetJSON408() *ApiError

GetJSON408 returns the response for an HTTP 408 `application/json` response

func (GetWebhookResponse) GetJSON423

func (r GetWebhookResponse) GetJSON423() *ApiError

GetJSON423 returns the response for an HTTP 423 `application/json` response

func (GetWebhookResponse) GetJSON429

func (r GetWebhookResponse) GetJSON429() *ApiError

GetJSON429 returns the response for an HTTP 429 `application/json` response

func (GetWebhookResponse) GetJSON500

func (r GetWebhookResponse) GetJSON500() *ApiError

GetJSON500 returns the response for an HTTP 500 `application/json` response

func (GetWebhookResponse) GetJSON503

func (r GetWebhookResponse) GetJSON503() *ApiError

GetJSON503 returns the response for an HTTP 503 `application/json` response

func (GetWebhookResponse) Status

func (r GetWebhookResponse) Status() string

Status returns HTTPResponse.Status

func (GetWebhookResponse) StatusCode

func (r GetWebhookResponse) StatusCode() int

StatusCode returns HTTPResponse.StatusCode

type GetWebhookResponse200Headers

type GetWebhookResponse200Headers struct {
	RateLimitLimit      *int
	RateLimitRemaining  *int
	RateLimitReset      *int
	ServerTiming        *string
	XEffectiveQuery     *string
	XQueryIgnored       *string
	XRateLimitLimit     *int
	XRateLimitRemaining *int
	XRateLimitReset     *int
	XRequestId          *string
	XUsageAccounting    *string
}

GetWebhookResponse200Headers the declared response headers of an HTTP 200 response for GetWebhook

type GetWebhookResponse429Headers

type GetWebhookResponse429Headers struct {
	RateLimitLimit      *int
	RateLimitRemaining  *int
	RateLimitReset      *int
	RetryAfter          *int
	XRateLimitLimit     *int
	XRateLimitRemaining *int
	XRateLimitReset     *int
	XRequestId          *string
}

GetWebhookResponse429Headers the declared response headers of an HTTP 429 response for GetWebhook

type GetWebhookResponse503Headers

type GetWebhookResponse503Headers struct {
	RetryAfter *int
	XRequestId *string
}

GetWebhookResponse503Headers the declared response headers of an HTTP 503 response for GetWebhook

type GetWeeklyReportSnapshot200JSONResponseBodyObject

type GetWeeklyReportSnapshot200JSONResponseBodyObject string

GetWeeklyReportSnapshot200JSONResponseBodyObject defines parameters for GetWeeklyReportSnapshot.

const (
	GetWeeklyReportSnapshot200JSONResponseBodyObjectReportSnapshot GetWeeklyReportSnapshot200JSONResponseBodyObject = "report_snapshot"
)

Defines values for GetWeeklyReportSnapshot200JSONResponseBodyObject.

func (GetWeeklyReportSnapshot200JSONResponseBodyObject) Valid

Valid indicates whether the value is a known member of the GetWeeklyReportSnapshot200JSONResponseBodyObject enum.

type GetWeeklyReportSnapshotParams

type GetWeeklyReportSnapshotParams struct {
	// From UTC source-range start in YYYY-MM-DD format; required with to. Together with to, selects an exact ephemeral range of at most 31 inclusive UTC days. A start after tomorrow UTC returns 400 bad_request with error.param=from.
	From *string `form:"from,omitempty" json:"from,omitempty"`

	// To UTC source-range end in YYYY-MM-DD format; required with from. Together with from, selects an exact ephemeral range of at most 31 inclusive UTC days. An end before 2024-03-01, the first day report data covers, returns 400 bad_request with error.param=to.
	To *string `form:"to,omitempty" json:"to,omitempty"`

	// Week ISO week selector in YYYY-WW format; alternative to from/to. Selects a durable canonical snapshot. A week that ends before 2024-03-01, the first day report data covers, or starts after tomorrow UTC returns 400 bad_request with error.param=week.
	Week *string `form:"week,omitempty" json:"week,omitempty"`

	// XQueryValidation Opt into strict query-name validation. The default is compatible: unknown names are ignored and reported in X-Query-Ignored. With strict, an unknown name returns 400 bad_request with error.reason unknown_query_parameter before the handler runs, including when its percent escape is incomplete.
	XQueryValidation *GetWeeklyReportSnapshotParamsXQueryValidation `json:"X-Query-Validation,omitempty"`
}

GetWeeklyReportSnapshotParams defines parameters for GetWeeklyReportSnapshot.

type GetWeeklyReportSnapshotParamsXQueryValidation added in v0.3.0

type GetWeeklyReportSnapshotParamsXQueryValidation string

GetWeeklyReportSnapshotParamsXQueryValidation defines parameters for GetWeeklyReportSnapshot.

const (
	GetWeeklyReportSnapshotParamsXQueryValidationStrict GetWeeklyReportSnapshotParamsXQueryValidation = "strict"
)

Defines values for GetWeeklyReportSnapshotParamsXQueryValidation.

func (GetWeeklyReportSnapshotParamsXQueryValidation) Valid added in v0.3.0

Valid indicates whether the value is a known member of the GetWeeklyReportSnapshotParamsXQueryValidation enum.

type GetWeeklyReportSnapshotResponse

type GetWeeklyReportSnapshotResponse struct {
	Body         []byte
	HTTPResponse *http.Response
	// JSON200 the response for an HTTP 200 `application/json` response
	JSON200 *struct {
		Data   ReportSnapshot                                   `json:"data"`
		Meta   ResponseMeta                                     `json:"meta"`
		Object GetWeeklyReportSnapshot200JSONResponseBodyObject `json:"object"`
	}
	// JSON400 the response for an HTTP 400 `application/json` response
	JSON400 *ApiError
	// JSON401 the response for an HTTP 401 `application/json` response
	JSON401 *ApiError
	// JSON402 the response for an HTTP 402 `application/json` response
	JSON402 *ApiError
	// JSON403 the response for an HTTP 403 `application/json` response
	JSON403 *ApiError
	// JSON408 the response for an HTTP 408 `application/json` response
	JSON408 *ApiError
	// JSON423 the response for an HTTP 423 `application/json` response
	JSON423 *ApiError
	// JSON429 the response for an HTTP 429 `application/json` response
	JSON429 *ApiError
	// JSON500 the response for an HTTP 500 `application/json` response
	JSON500 *ApiError
	// JSON503 the response for an HTTP 503 `application/json` response
	JSON503 *ApiError
	// Headers200 the parsed response headers for an HTTP 200 response
	Headers200 *GetWeeklyReportSnapshotResponse200Headers
	// Headers429 the parsed response headers for an HTTP 429 response
	Headers429 *GetWeeklyReportSnapshotResponse429Headers
	// Headers503 the parsed response headers for an HTTP 503 response
	Headers503 *GetWeeklyReportSnapshotResponse503Headers
}

func ParseGetWeeklyReportSnapshotResponse

func ParseGetWeeklyReportSnapshotResponse(rsp *http.Response) (*GetWeeklyReportSnapshotResponse, error)

ParseGetWeeklyReportSnapshotResponse parses an HTTP response from a GetWeeklyReportSnapshotWithResponse call

func (GetWeeklyReportSnapshotResponse) ContentType

func (r GetWeeklyReportSnapshotResponse) ContentType() string

ContentType is a convenience method to retrieve the Content-Type value from the HTTP response headers

func (GetWeeklyReportSnapshotResponse) GetBody

func (r GetWeeklyReportSnapshotResponse) GetBody() []byte

GetBody returns the raw response body bytes

func (GetWeeklyReportSnapshotResponse) GetJSON200

func (r GetWeeklyReportSnapshotResponse) GetJSON200() *struct {
	Data   ReportSnapshot                                   `json:"data"`
	Meta   ResponseMeta                                     `json:"meta"`
	Object GetWeeklyReportSnapshot200JSONResponseBodyObject `json:"object"`
}

GetJSON200 returns the response for an HTTP 200 `application/json` response

func (GetWeeklyReportSnapshotResponse) GetJSON400

func (r GetWeeklyReportSnapshotResponse) GetJSON400() *ApiError

GetJSON400 returns the response for an HTTP 400 `application/json` response

func (GetWeeklyReportSnapshotResponse) GetJSON401

func (r GetWeeklyReportSnapshotResponse) GetJSON401() *ApiError

GetJSON401 returns the response for an HTTP 401 `application/json` response

func (GetWeeklyReportSnapshotResponse) GetJSON402

func (r GetWeeklyReportSnapshotResponse) GetJSON402() *ApiError

GetJSON402 returns the response for an HTTP 402 `application/json` response

func (GetWeeklyReportSnapshotResponse) GetJSON403

func (r GetWeeklyReportSnapshotResponse) GetJSON403() *ApiError

GetJSON403 returns the response for an HTTP 403 `application/json` response

func (GetWeeklyReportSnapshotResponse) GetJSON408 added in v0.2.0

func (r GetWeeklyReportSnapshotResponse) GetJSON408() *ApiError

GetJSON408 returns the response for an HTTP 408 `application/json` response

func (GetWeeklyReportSnapshotResponse) GetJSON423

func (r GetWeeklyReportSnapshotResponse) GetJSON423() *ApiError

GetJSON423 returns the response for an HTTP 423 `application/json` response

func (GetWeeklyReportSnapshotResponse) GetJSON429

func (r GetWeeklyReportSnapshotResponse) GetJSON429() *ApiError

GetJSON429 returns the response for an HTTP 429 `application/json` response

func (GetWeeklyReportSnapshotResponse) GetJSON500

func (r GetWeeklyReportSnapshotResponse) GetJSON500() *ApiError

GetJSON500 returns the response for an HTTP 500 `application/json` response

func (GetWeeklyReportSnapshotResponse) GetJSON503

func (r GetWeeklyReportSnapshotResponse) GetJSON503() *ApiError

GetJSON503 returns the response for an HTTP 503 `application/json` response

func (GetWeeklyReportSnapshotResponse) Status

Status returns HTTPResponse.Status

func (GetWeeklyReportSnapshotResponse) StatusCode

func (r GetWeeklyReportSnapshotResponse) StatusCode() int

StatusCode returns HTTPResponse.StatusCode

type GetWeeklyReportSnapshotResponse200Headers

type GetWeeklyReportSnapshotResponse200Headers struct {
	RateLimitLimit      *int
	RateLimitRemaining  *int
	RateLimitReset      *int
	ServerTiming        *string
	XEffectiveQuery     *string
	XQueryIgnored       *string
	XRateLimitLimit     *int
	XRateLimitRemaining *int
	XRateLimitReset     *int
	XRequestId          *string
	XUsageAccounting    *string
}

GetWeeklyReportSnapshotResponse200Headers the declared response headers of an HTTP 200 response for GetWeeklyReportSnapshot

type GetWeeklyReportSnapshotResponse429Headers

type GetWeeklyReportSnapshotResponse429Headers struct {
	RateLimitLimit      *int
	RateLimitRemaining  *int
	RateLimitReset      *int
	RetryAfter          *int
	XRateLimitLimit     *int
	XRateLimitRemaining *int
	XRateLimitReset     *int
	XRequestId          *string
}

GetWeeklyReportSnapshotResponse429Headers the declared response headers of an HTTP 429 response for GetWeeklyReportSnapshot

type GetWeeklyReportSnapshotResponse503Headers

type GetWeeklyReportSnapshotResponse503Headers struct {
	RetryAfter *int
	XRequestId *string
}

GetWeeklyReportSnapshotResponse503Headers the declared response headers of an HTTP 503 response for GetWeeklyReportSnapshot

type GetWhaleDatasetStatusResponse added in v0.4.0

type GetWhaleDatasetStatusResponse struct {
	Body         []byte
	HTTPResponse *http.Response
	// JSON200 the response for an HTTP 200 `application/json` response
	JSON200 *WhaleDatasetJob
	// JSON400 the response for an HTTP 400 `application/json` response
	JSON400 *ApiError
	// JSON401 the response for an HTTP 401 `application/json` response
	JSON401 *ApiError
	// JSON402 the response for an HTTP 402 `application/json` response
	JSON402 *ApiError
	// JSON403 the response for an HTTP 403 `application/json` response
	JSON403 *ApiError
	// JSON404 the response for an HTTP 404 `application/json` response
	JSON404 *ApiError
	// JSON408 the response for an HTTP 408 `application/json` response
	JSON408 *ApiError
	// JSON423 the response for an HTTP 423 `application/json` response
	JSON423 *ApiError
	// JSON429 the response for an HTTP 429 `application/json` response
	JSON429 *ApiError
	// JSON500 the response for an HTTP 500 `application/json` response
	JSON500 *ApiError
	// JSON503 the response for an HTTP 503 `application/json` response
	JSON503 *ApiError
	// Headers429 the parsed response headers for an HTTP 429 response
	Headers429 *GetWhaleDatasetStatusResponse429Headers
	// Headers503 the parsed response headers for an HTTP 503 response
	Headers503 *GetWhaleDatasetStatusResponse503Headers
}

func ParseGetWhaleDatasetStatusResponse added in v0.4.0

func ParseGetWhaleDatasetStatusResponse(rsp *http.Response) (*GetWhaleDatasetStatusResponse, error)

ParseGetWhaleDatasetStatusResponse parses an HTTP response from a GetWhaleDatasetStatusWithResponse call

func (GetWhaleDatasetStatusResponse) ContentType added in v0.4.0

func (r GetWhaleDatasetStatusResponse) ContentType() string

ContentType is a convenience method to retrieve the Content-Type value from the HTTP response headers

func (GetWhaleDatasetStatusResponse) GetBody added in v0.4.0

func (r GetWhaleDatasetStatusResponse) GetBody() []byte

GetBody returns the raw response body bytes

func (GetWhaleDatasetStatusResponse) GetJSON200 added in v0.4.0

GetJSON200 returns the response for an HTTP 200 `application/json` response

func (GetWhaleDatasetStatusResponse) GetJSON400 added in v0.4.0

func (r GetWhaleDatasetStatusResponse) GetJSON400() *ApiError

GetJSON400 returns the response for an HTTP 400 `application/json` response

func (GetWhaleDatasetStatusResponse) GetJSON401 added in v0.4.0

func (r GetWhaleDatasetStatusResponse) GetJSON401() *ApiError

GetJSON401 returns the response for an HTTP 401 `application/json` response

func (GetWhaleDatasetStatusResponse) GetJSON402 added in v0.4.0

func (r GetWhaleDatasetStatusResponse) GetJSON402() *ApiError

GetJSON402 returns the response for an HTTP 402 `application/json` response

func (GetWhaleDatasetStatusResponse) GetJSON403 added in v0.4.0

func (r GetWhaleDatasetStatusResponse) GetJSON403() *ApiError

GetJSON403 returns the response for an HTTP 403 `application/json` response

func (GetWhaleDatasetStatusResponse) GetJSON404 added in v0.4.0

func (r GetWhaleDatasetStatusResponse) GetJSON404() *ApiError

GetJSON404 returns the response for an HTTP 404 `application/json` response

func (GetWhaleDatasetStatusResponse) GetJSON408 added in v0.4.0

func (r GetWhaleDatasetStatusResponse) GetJSON408() *ApiError

GetJSON408 returns the response for an HTTP 408 `application/json` response

func (GetWhaleDatasetStatusResponse) GetJSON423 added in v0.4.0

func (r GetWhaleDatasetStatusResponse) GetJSON423() *ApiError

GetJSON423 returns the response for an HTTP 423 `application/json` response

func (GetWhaleDatasetStatusResponse) GetJSON429 added in v0.4.0

func (r GetWhaleDatasetStatusResponse) GetJSON429() *ApiError

GetJSON429 returns the response for an HTTP 429 `application/json` response

func (GetWhaleDatasetStatusResponse) GetJSON500 added in v0.4.0

func (r GetWhaleDatasetStatusResponse) GetJSON500() *ApiError

GetJSON500 returns the response for an HTTP 500 `application/json` response

func (GetWhaleDatasetStatusResponse) GetJSON503 added in v0.4.0

func (r GetWhaleDatasetStatusResponse) GetJSON503() *ApiError

GetJSON503 returns the response for an HTTP 503 `application/json` response

func (GetWhaleDatasetStatusResponse) Status added in v0.4.0

Status returns HTTPResponse.Status

func (GetWhaleDatasetStatusResponse) StatusCode added in v0.4.0

func (r GetWhaleDatasetStatusResponse) StatusCode() int

StatusCode returns HTTPResponse.StatusCode

type GetWhaleDatasetStatusResponse429Headers added in v0.4.0

type GetWhaleDatasetStatusResponse429Headers struct {
	RateLimitLimit      *int
	RateLimitRemaining  *int
	RateLimitReset      *int
	RetryAfter          *int
	XRateLimitLimit     *int
	XRateLimitRemaining *int
	XRateLimitReset     *int
	XRequestId          *string
}

GetWhaleDatasetStatusResponse429Headers the declared response headers of an HTTP 429 response for GetWhaleDatasetStatus

type GetWhaleDatasetStatusResponse503Headers added in v0.4.0

type GetWhaleDatasetStatusResponse503Headers struct {
	RetryAfter *int
	XRequestId *string
}

GetWhaleDatasetStatusResponse503Headers the declared response headers of an HTTP 503 response for GetWhaleDatasetStatus

type GetWhaleTrade200JSONResponseBodyObject

type GetWhaleTrade200JSONResponseBodyObject string

GetWhaleTrade200JSONResponseBodyObject defines parameters for GetWhaleTrade.

const (
	WhaleTrade GetWhaleTrade200JSONResponseBodyObject = "whale_trade"
)

Defines values for GetWhaleTrade200JSONResponseBodyObject.

func (GetWhaleTrade200JSONResponseBodyObject) Valid

Valid indicates whether the value is a known member of the GetWhaleTrade200JSONResponseBodyObject enum.

type GetWhaleTradeParams

type GetWhaleTradeParams struct {
	// IfNoneMatch Conditional GET validator from a previous ETag. Matching values return 304 Not Modified with an empty body.
	IfNoneMatch *string `json:"If-None-Match,omitempty"`
}

GetWhaleTradeParams defines parameters for GetWhaleTrade.

type GetWhaleTradeResponse

type GetWhaleTradeResponse struct {
	Body         []byte
	HTTPResponse *http.Response
	// JSON200 the response for an HTTP 200 `application/json` response
	JSON200 *struct {
		Data   LargeTradeDetail                       `json:"data"`
		Meta   ResponseMeta                           `json:"meta"`
		Object GetWhaleTrade200JSONResponseBodyObject `json:"object"`
	}
	// JSON400 the response for an HTTP 400 `application/json` response
	JSON400 *ApiError
	// JSON401 the response for an HTTP 401 `application/json` response
	JSON401 *ApiError
	// JSON402 the response for an HTTP 402 `application/json` response
	JSON402 *ApiError
	// JSON403 the response for an HTTP 403 `application/json` response
	JSON403 *ApiError
	// JSON404 the response for an HTTP 404 `application/json` response
	JSON404 *ApiError
	// JSON408 the response for an HTTP 408 `application/json` response
	JSON408 *ApiError
	// JSON423 the response for an HTTP 423 `application/json` response
	JSON423 *ApiError
	// JSON429 the response for an HTTP 429 `application/json` response
	JSON429 *ApiError
	// JSON500 the response for an HTTP 500 `application/json` response
	JSON500 *ApiError
	// JSON503 the response for an HTTP 503 `application/json` response
	JSON503 *ApiError
	// Headers200 the parsed response headers for an HTTP 200 response
	Headers200 *GetWhaleTradeResponse200Headers
	// Headers304 the parsed response headers for an HTTP 304 response
	Headers304 *GetWhaleTradeResponse304Headers
	// Headers429 the parsed response headers for an HTTP 429 response
	Headers429 *GetWhaleTradeResponse429Headers
	// Headers503 the parsed response headers for an HTTP 503 response
	Headers503 *GetWhaleTradeResponse503Headers
}

func ParseGetWhaleTradeResponse

func ParseGetWhaleTradeResponse(rsp *http.Response) (*GetWhaleTradeResponse, error)

ParseGetWhaleTradeResponse parses an HTTP response from a GetWhaleTradeWithResponse call

func (GetWhaleTradeResponse) ContentType

func (r GetWhaleTradeResponse) ContentType() string

ContentType is a convenience method to retrieve the Content-Type value from the HTTP response headers

func (GetWhaleTradeResponse) GetBody

func (r GetWhaleTradeResponse) GetBody() []byte

GetBody returns the raw response body bytes

func (GetWhaleTradeResponse) GetJSON200

func (r GetWhaleTradeResponse) GetJSON200() *struct {
	Data   LargeTradeDetail                       `json:"data"`
	Meta   ResponseMeta                           `json:"meta"`
	Object GetWhaleTrade200JSONResponseBodyObject `json:"object"`
}

GetJSON200 returns the response for an HTTP 200 `application/json` response

func (GetWhaleTradeResponse) GetJSON400

func (r GetWhaleTradeResponse) GetJSON400() *ApiError

GetJSON400 returns the response for an HTTP 400 `application/json` response

func (GetWhaleTradeResponse) GetJSON401

func (r GetWhaleTradeResponse) GetJSON401() *ApiError

GetJSON401 returns the response for an HTTP 401 `application/json` response

func (GetWhaleTradeResponse) GetJSON402

func (r GetWhaleTradeResponse) GetJSON402() *ApiError

GetJSON402 returns the response for an HTTP 402 `application/json` response

func (GetWhaleTradeResponse) GetJSON403

func (r GetWhaleTradeResponse) GetJSON403() *ApiError

GetJSON403 returns the response for an HTTP 403 `application/json` response

func (GetWhaleTradeResponse) GetJSON404

func (r GetWhaleTradeResponse) GetJSON404() *ApiError

GetJSON404 returns the response for an HTTP 404 `application/json` response

func (GetWhaleTradeResponse) GetJSON408 added in v0.2.0

func (r GetWhaleTradeResponse) GetJSON408() *ApiError

GetJSON408 returns the response for an HTTP 408 `application/json` response

func (GetWhaleTradeResponse) GetJSON423

func (r GetWhaleTradeResponse) GetJSON423() *ApiError

GetJSON423 returns the response for an HTTP 423 `application/json` response

func (GetWhaleTradeResponse) GetJSON429

func (r GetWhaleTradeResponse) GetJSON429() *ApiError

GetJSON429 returns the response for an HTTP 429 `application/json` response

func (GetWhaleTradeResponse) GetJSON500 added in v0.4.0

func (r GetWhaleTradeResponse) GetJSON500() *ApiError

GetJSON500 returns the response for an HTTP 500 `application/json` response

func (GetWhaleTradeResponse) GetJSON503

func (r GetWhaleTradeResponse) GetJSON503() *ApiError

GetJSON503 returns the response for an HTTP 503 `application/json` response

func (GetWhaleTradeResponse) Status

func (r GetWhaleTradeResponse) Status() string

Status returns HTTPResponse.Status

func (GetWhaleTradeResponse) StatusCode

func (r GetWhaleTradeResponse) StatusCode() int

StatusCode returns HTTPResponse.StatusCode

type GetWhaleTradeResponse200Headers

type GetWhaleTradeResponse200Headers struct {
	Deprecation         *string
	ETag                *string
	Link                *string
	RateLimitLimit      *int
	RateLimitRemaining  *int
	RateLimitReset      *int
	ServerTiming        *string
	XRateLimitLimit     *int
	XRateLimitRemaining *int
	XRateLimitReset     *int
	XRequestId          *string
	XUsageAccounting    *string
}

GetWhaleTradeResponse200Headers the declared response headers of an HTTP 200 response for GetWhaleTrade

type GetWhaleTradeResponse304Headers

type GetWhaleTradeResponse304Headers struct {
	ETag                *string
	RateLimitLimit      *int
	RateLimitRemaining  *int
	RateLimitReset      *int
	ServerTiming        *string
	XRateLimitLimit     *int
	XRateLimitRemaining *int
	XRateLimitReset     *int
	XRequestId          *string
	XUsageAccounting    *string
}

GetWhaleTradeResponse304Headers the declared response headers of an HTTP 304 response for GetWhaleTrade

type GetWhaleTradeResponse429Headers

type GetWhaleTradeResponse429Headers struct {
	RateLimitLimit      *int
	RateLimitRemaining  *int
	RateLimitReset      *int
	RetryAfter          *int
	XRateLimitLimit     *int
	XRateLimitRemaining *int
	XRateLimitReset     *int
	XRequestId          *string
}

GetWhaleTradeResponse429Headers the declared response headers of an HTTP 429 response for GetWhaleTrade

type GetWhaleTradeResponse503Headers

type GetWhaleTradeResponse503Headers struct {
	RetryAfter *int
	XRequestId *string
}

GetWhaleTradeResponse503Headers the declared response headers of an HTTP 503 response for GetWhaleTrade

type HolderCategoryEvidence added in v0.2.0

type HolderCategoryEvidence struct {
	CanonicalCategory *string `json:"canonical_category,omitempty"`

	// Skill 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.
	Skill  *CategorySkillV2             `json:"skill,omitempty"`
	Status HolderCategoryEvidenceStatus `json:"status"`
}

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

type HolderCategoryEvidenceStatus added in v0.2.0

type HolderCategoryEvidenceStatus string

HolderCategoryEvidenceStatus defines model for HolderCategoryEvidence.Status.

const (
	HolderCategoryEvidenceStatusDegraded     HolderCategoryEvidenceStatus = "degraded"
	HolderCategoryEvidenceStatusInsufficient HolderCategoryEvidenceStatus = "insufficient"
	HolderCategoryEvidenceStatusLive         HolderCategoryEvidenceStatus = "live"
	HolderCategoryEvidenceStatusStale        HolderCategoryEvidenceStatus = "stale"
	HolderCategoryEvidenceStatusUnknown      HolderCategoryEvidenceStatus = "unknown"
)

Defines values for HolderCategoryEvidenceStatus.

func (HolderCategoryEvidenceStatus) Valid added in v0.2.0

Valid indicates whether the value is a known member of the HolderCategoryEvidenceStatus enum.

type HttpRequestDoer

type HttpRequestDoer interface {
	Do(req *http.Request) (*http.Response, error)
}

Doer performs HTTP requests.

The standard http.Client implements this interface.

type InsecureTransportError added in v0.2.0

type InsecureTransportError struct {
	Origin string
	// Redirect is true when the destination was a redirect target rather
	// than the request's own URL.
	Redirect bool
}

InsecureTransportError reports that a credential would have been sent over plain HTTP to a host that is not loopback. Origin is the refused destination (scheme, host and port); the credential is never part of it.

func (*InsecureTransportError) Error added in v0.2.0

func (e *InsecureTransportError) Error() string

type LargeExportPolicy

type LargeExportPolicy struct {
	AsyncJob             map[string]interface{} `json:"async_job"`
	CurrentInternalRoute string                 `json:"current_internal_route"`
	DirectStreaming      map[string]interface{} `json:"direct_streaming"`
	Mode                 LargeExportPolicyMode  `json:"mode"`
	RateLimit            map[string]interface{} `json:"rate_limit"`

	// V1Async Programmatic API-key-gated export routes (submit/status/download/cancel) and supported formats (json, ndjson, csv).
	V1Async struct {
		// CancelRoute POST route template to cancel a queued or running job.
		CancelRoute *string `json:"cancel_route,omitempty"`

		// DownloadRoute GET route template that 302-redirects to the file.
		DownloadRoute *string `json:"download_route,omitempty"`

		// Formats Supported ?format= values.
		Formats *[]LargeExportPolicyV1AsyncFormats `json:"formats,omitempty"`

		// Retention How long a finished export is retained before expiry.
		Retention *string `json:"retention,omitempty"`

		// StatusRoute GET route template to poll job status.
		StatusRoute *string `json:"status_route,omitempty"`

		// StatusValues Possible job status values.
		StatusValues *[]LargeExportPolicyV1AsyncStatusValues `json:"status_values,omitempty"`

		// SubmitRoute POST route template to submit an export job. fresh=true asks for a snapshot read after the submit instead of reusing a finished one.
		SubmitRoute *string `json:"submit_route,omitempty"`
	} `json:"v1_async"`
}

LargeExportPolicy defines model for LargeExportPolicy.

type LargeExportPolicyMode

type LargeExportPolicyMode string

LargeExportPolicyMode defines model for LargeExportPolicy.Mode.

const (
	V1AsyncExport LargeExportPolicyMode = "v1_async_export"
)

Defines values for LargeExportPolicyMode.

func (LargeExportPolicyMode) Valid

func (e LargeExportPolicyMode) Valid() bool

Valid indicates whether the value is a known member of the LargeExportPolicyMode enum.

type LargeExportPolicyV1AsyncFormats

type LargeExportPolicyV1AsyncFormats string

LargeExportPolicyV1AsyncFormats defines model for LargeExportPolicy.V1Async.Formats.

const (
	LargeExportPolicyV1AsyncFormatsCsv    LargeExportPolicyV1AsyncFormats = "csv"
	LargeExportPolicyV1AsyncFormatsJson   LargeExportPolicyV1AsyncFormats = "json"
	LargeExportPolicyV1AsyncFormatsNdjson LargeExportPolicyV1AsyncFormats = "ndjson"
)

Defines values for LargeExportPolicyV1AsyncFormats.

func (LargeExportPolicyV1AsyncFormats) Valid

Valid indicates whether the value is a known member of the LargeExportPolicyV1AsyncFormats enum.

type LargeExportPolicyV1AsyncStatusValues

type LargeExportPolicyV1AsyncStatusValues string

LargeExportPolicyV1AsyncStatusValues defines model for LargeExportPolicy.V1Async.StatusValues.

const (
	LargeExportPolicyV1AsyncStatusValuesCancelRequested   LargeExportPolicyV1AsyncStatusValues = "cancel_requested"
	LargeExportPolicyV1AsyncStatusValuesCancelled         LargeExportPolicyV1AsyncStatusValues = "cancelled"
	LargeExportPolicyV1AsyncStatusValuesExpired           LargeExportPolicyV1AsyncStatusValues = "expired"
	LargeExportPolicyV1AsyncStatusValuesFailed            LargeExportPolicyV1AsyncStatusValues = "failed"
	LargeExportPolicyV1AsyncStatusValuesQueued            LargeExportPolicyV1AsyncStatusValues = "queued"
	LargeExportPolicyV1AsyncStatusValuesReady             LargeExportPolicyV1AsyncStatusValues = "ready"
	LargeExportPolicyV1AsyncStatusValuesReconcileRequired LargeExportPolicyV1AsyncStatusValues = "reconcile_required"
	LargeExportPolicyV1AsyncStatusValuesRunning           LargeExportPolicyV1AsyncStatusValues = "running"
)

Defines values for LargeExportPolicyV1AsyncStatusValues.

func (LargeExportPolicyV1AsyncStatusValues) Valid

Valid indicates whether the value is a known member of the LargeExportPolicyV1AsyncStatusValues enum.

type LargePosition

type LargePosition struct {
	// AvgEntryPrice Volume-weighted entry price.
	AvgEntryPrice *float32 `json:"avg_entry_price,omitempty"`

	// CombinedUnrealizedPnl The wallet's unrealized P&L across every outcome it holds in this market. Equals position_unrealized_pnl unless is_two_sided is true.
	CombinedUnrealizedPnl *float32 `json:"combined_unrealized_pnl,omitempty"`

	// CombinedValueUsd The wallet's currentValue across every outcome it holds in this market. Equals total_size_usd unless is_two_sided is true, and is the value the feed ranked this row by.
	CombinedValueUsd *float32 `json:"combined_value_usd,omitempty"`

	// CurrentPrice Latest provider mark price for the position's token.
	CurrentPrice *float32 `json:"current_price,omitempty"`

	// EventLegCount Legs collapsed into this representative row for one (wallet, event, outcome side) group. 1 means standalone.
	EventLegCount int `json:"event_leg_count"`

	// EventTotalValueUsd Sum of the collapsed sibling legs' own holding values for this (wallet, event) group; equals total_size_usd when event_leg_count = 1, and omitted when any member's value is unknown.
	EventTotalValueUsd *float32  `json:"event_total_value_usd,omitempty"`
	FirstSeenAt        time.Time `json:"first_seen_at"`

	// Holdings Every outcome the wallet holds, primary first. holdings[0] restates the top-level per-outcome fields; a further entry is a leg those fields do not describe. No amount here is a share-proportional slice of a both-sides total.
	Holdings []struct {
		// AvgEntryPrice Provider average entry price for this outcome.
		AvgEntryPrice *float32 `json:"avg_entry_price,omitempty"`

		// CurrentPrice Provider mark price for this outcome.
		CurrentPrice *float32 `json:"current_price,omitempty"`

		// OutcomeIndex 0 = Yes, 1 = No.
		OutcomeIndex int `json:"outcome_index"`

		// OutcomeLabel The market's label for this outcome.
		OutcomeLabel *string `json:"outcome_label,omitempty"`

		// ShareCount Shares held on this outcome.
		ShareCount float32 `json:"share_count"`

		// TokenId Polymarket CLOB token id for this outcome; null for an unsynced market.
		TokenId string `json:"token_id"`

		// UnrealizedPnl Provider unrealized P&L for this outcome. An absent key means unavailable, not break-even.
		UnrealizedPnl *float32 `json:"unrealized_pnl,omitempty"`

		// ValueUsd Provider currentValue for this outcome. An absent key means unavailable, not zero.
		ValueUsd *float32 `json:"value_usd,omitempty"`
	} `json:"holdings"`

	// Id Composite prefixed ID `pos_<wallet>:<condition_id>:<outcome_index>`.
	Id string `json:"id"`

	// IsTwoSided Whether the wallet holds shares on both outcomes of this market.
	IsTwoSided    bool      `json:"is_two_sided"`
	LastUpdatedAt time.Time `json:"last_updated_at"`
	Market        struct {
		Category    *string `json:"category,omitempty"`
		ConditionId string  `json:"condition_id"`
		EventSlug   *string `json:"event_slug,omitempty"`

		// Id Prefixed ID (`mkt_...`).
		Id    string  `json:"id"`
		Slug  *string `json:"slug,omitempty"`
		Title *string `json:"title,omitempty"`
	} `json:"market"`

	// OutcomeLabel Backend-resolved outcome label (provider outcome, else Yes/No from the binary index).
	OutcomeLabel *string `json:"outcome_label,omitempty"`

	// Platform Provider discriminator. Always polymarket.
	Platform LargePositionPlatform `json:"platform"`

	// PositionUnrealizedPnl Provider unrealized mark-to-market P&L (Polymarket cashPnl) for that same one outcome. An absent key means unavailable, not break-even.
	PositionUnrealizedPnl *float32 `json:"position_unrealized_pnl,omitempty"`

	// ShareCount Live share count for this position.
	ShareCount float32 `json:"share_count"`

	// TokenId The Polymarket CLOB token id (ERC1155 asset id, decimal string) for this outcome; null when unavailable (e.g. unsynced markets).
	TokenId string `json:"token_id"`

	// TotalSizeUsd Provider currentValue in USD for the outcome named by outcome_label / token_id, and for that outcome only. An absent key means the provider supplied no value for this leg, not a zero position. combined_value_usd carries the wallet's whole-market total.
	TotalSizeUsd *float32 `json:"total_size_usd,omitempty"`
	Trader       struct {
		Address string                    `json:"address"`
		Grade   *LargePositionTraderGrade `json:"grade,omitempty"`

		// Id Prefixed ID (`trd_...`).
		Id            string `json:"id"`
		MarketsTraded *int   `json:"markets_traded,omitempty"`

		// Pnl Trader lifetime realized P&L across all markets.
		Pnl      *float32 `json:"pnl,omitempty"`
		Username *string  `json:"username,omitempty"`
		WinRate  *float32 `json:"win_rate,omitempty"`
	} `json:"trader"`
}

LargePosition defines model for LargePosition.

type LargePositionPlatform

type LargePositionPlatform string

LargePositionPlatform Provider discriminator. Always polymarket.

const (
	LargePositionPlatformPolymarket LargePositionPlatform = "polymarket"
)

Defines values for LargePositionPlatform.

func (LargePositionPlatform) Valid

func (e LargePositionPlatform) Valid() bool

Valid indicates whether the value is a known member of the LargePositionPlatform enum.

type LargePositionTraderGrade

type LargePositionTraderGrade string

LargePositionTraderGrade defines model for LargePosition.Trader.Grade.

const (
	LargePositionTraderGradeA LargePositionTraderGrade = "A"
	LargePositionTraderGradeB LargePositionTraderGrade = "B"
	LargePositionTraderGradeC LargePositionTraderGrade = "C"
	LargePositionTraderGradeD LargePositionTraderGrade = "D"
	LargePositionTraderGradeF LargePositionTraderGrade = "F"
	LargePositionTraderGradeS LargePositionTraderGrade = "S"
)

Defines values for LargePositionTraderGrade.

func (LargePositionTraderGrade) Valid

func (e LargePositionTraderGrade) Valid() bool

Valid indicates whether the value is a known member of the LargePositionTraderGrade enum.

type LargeTrade added in v0.4.0

type LargeTrade struct {
	// Id Prefixed ID (wt_...).
	Id     string `json:"id"`
	Market struct {
		// Category Provider-backed market_canonical category.
		Category    *string `json:"category,omitempty"`
		ConditionId string  `json:"condition_id"`
		Id          string  `json:"id"`
		Slug        *string `json:"slug,omitempty"`
		Title       string  `json:"title"`
	} `json:"market"`

	// MarketVolumeShare This fill's size relative to its market: size_usd divided by a market volume figure recorded at or after the trade, so the value always falls between 0 and 1 inclusive. A $10,000 fill is 0.00005 of a $200M market and 0.125 of an $80,000 one, which size_usd alone cannot distinguish. Absent when no volume figure recorded at or after the trade is available; never 0 as a stand-in and never capped at 1, because a denominator we cannot trust publishes nothing rather than a trimmed number. A market's volume keeps growing, so the same trade reports a smaller share as the market trades on.
	MarketVolumeShare *float32 `json:"market_volume_share,omitempty"`

	// Outcome Traded outcome label (e.g. "Yes"/"No"/team name), resolved provider-first from the trade's outcome_index against market_canonical (index 0 -> yes, 1 -> no). Distinct axis from side (BUY/SELL): side is the trade direction, outcome is which leg was traded. null for multi-outcome (outcome_index >= 2) or unsynced markets, and for a Polymarket trade recorded before 2026-04-02T00:00:00Z, whose stored outcome_index is not trusted (a defaulted 0 for about a third of those rows; the side is unknown, not defaulted).
	Outcome string  `json:"outcome"`
	Price   float32 `json:"price"`

	// RecordedReviewScore 0.0–1.0 review score written once when the trade row is inserted, from the trader's statistics at that moment. Populated from 2026-08-03T11:59Z; older rows return null and are never backfilled, because a backfill could only read today's statistics. If a trade is added later, its time-sensitive recorded score reflects that delay. Canonical since #16311; recorded_signal_score carries the same value.
	RecordedReviewScore float32 `json:"recorded_review_score"`

	// RecordedSignalScore 0.0–1.0 review score written once when the trade row is inserted; null before 2026-08-03T11:59Z. Deprecated (#16311): `recorded_review_score` is the canonical spelling and carries the same value; this key stays on the wire.
	// Deprecated: this property has been marked as deprecated upstream, but no `x-deprecated-reason` was set
	RecordedSignalScore float32 `json:"recorded_signal_score"`

	// ReviewScore Current 0.0–1.0 review score, computed at request time from the trade's size, the trader's win rate today, a bonus when a trader with a win rate above 55% trades at a price below 30¢, and the trade's age now. A higher score means read this trade first; it does not measure edge or predict an outcome. On a historical row it is today's view of the trade, not what a reader saw then; use recorded_review_score for that. Canonical since #16311; signal_score carries the same value.
	ReviewScore float32        `json:"review_score"`
	Side        LargeTradeSide `json:"side"`

	// SignalScore Current 0.0–1.0 review score, computed at request time from the trader's win rate today and the trade's age now. Deprecated (#16311): `review_score` is the canonical spelling and carries the same value; this key stays on the wire.
	// Deprecated: this property has been marked as deprecated upstream, but no `x-deprecated-reason` was set
	SignalScore float32 `json:"signal_score"`
	SizeUsd     float32 `json:"size_usd"`

	// SuspicionScore Persisted live suspicion score from the scorer. Null when the row has no persisted score.
	SuspicionScore int `json:"suspicion_score"`

	// SuspicionTrack Persisted scorer track. Null when a legacy row has no stored track label.
	SuspicionTrack LargeTradeSuspicionTrack `json:"suspicion_track"`

	// TokenId The Polymarket CLOB token id (ERC1155 asset id, decimal string) for the traded outcome; null when unavailable (e.g. unsynced markets) and for a Polymarket trade recorded before 2026-04-02T00:00:00Z, where the traded side is unknown.
	TokenId  string    `json:"token_id"`
	TradedAt time.Time `json:"traded_at"`
	Trader   struct {
		Address string `json:"address"`

		// Grade The trader's grade today, on every row however old. For what the grade was when the trade happened, read grade_at_trade.
		Grade *string `json:"grade,omitempty"`

		// GradeAtTrade The grade the trader held when the trade happened, from recorded grade history (recorded from 2026-09-19T23:00Z). Null unless grade_at_trade_status is graded. Never today's grade projected backward.
		GradeAtTrade LargeTradeTraderGradeAtTrade `json:"grade_at_trade"`

		// GradeAtTradeStatus graded: grade_at_trade holds the recorded grade. ungraded: the trader was recorded without a grade at that moment. unknown: no record covers the moment, which is every trade before 2026-09-19T23:00Z and a trade that fell between a grade change and its confirmation. unknown never means ungraded.
		GradeAtTradeStatus LargeTradeTraderGradeAtTradeStatus `json:"grade_at_trade_status"`
		Id                 string                             `json:"id"`
		Username           *string                            `json:"username,omitempty"`
	} `json:"trader"`
}

LargeTrade defines model for LargeTrade.

type LargeTradeDetail added in v0.4.0

type LargeTradeDetail struct {
	CounterpartyAnalysis CounterpartyAnalysis `json:"counterparty_analysis"`

	// Id Prefixed ID (wt_...).
	Id     string `json:"id"`
	Market struct {
		// Category Provider-backed market_canonical category.
		Category    *string `json:"category,omitempty"`
		ConditionId string  `json:"condition_id"`
		Id          string  `json:"id"`
		Slug        *string `json:"slug,omitempty"`
		Title       string  `json:"title"`
	} `json:"market"`

	// MarketVolumeShare This fill's size relative to its market: size_usd divided by a market volume figure recorded at or after the trade, so the value always falls between 0 and 1 inclusive. A $10,000 fill is 0.00005 of a $200M market and 0.125 of an $80,000 one, which size_usd alone cannot distinguish. Absent when no volume figure recorded at or after the trade is available; never 0 as a stand-in and never capped at 1, because a denominator we cannot trust publishes nothing rather than a trimmed number. A market's volume keeps growing, so the same trade reports a smaller share as the market trades on.
	MarketVolumeShare *float32 `json:"market_volume_share,omitempty"`

	// Outcome Traded outcome label (e.g. "Yes"/"No"/team name), resolved provider-first from the trade's outcome_index against market_canonical (index 0 -> yes, 1 -> no). Distinct axis from side (BUY/SELL): side is the trade direction, outcome is which leg was traded. null for multi-outcome (outcome_index >= 2) or unsynced markets, and for a Polymarket trade recorded before 2026-04-02T00:00:00Z, whose stored outcome_index is not trusted (a defaulted 0 for about a third of those rows; the side is unknown, not defaulted).
	Outcome string  `json:"outcome"`
	Price   float32 `json:"price"`

	// RecordedReviewScore 0.0–1.0 review score written once when the trade row is inserted, from the trader's statistics at that moment. Populated from 2026-08-03T11:59Z; older rows return null and are never backfilled, because a backfill could only read today's statistics. If a trade is added later, its time-sensitive recorded score reflects that delay. Canonical since #16311; recorded_signal_score carries the same value.
	RecordedReviewScore float32 `json:"recorded_review_score"`

	// RecordedSignalScore 0.0–1.0 review score written once when the trade row is inserted; null before 2026-08-03T11:59Z. Deprecated (#16311): `recorded_review_score` is the canonical spelling and carries the same value; this key stays on the wire.
	// Deprecated: this property has been marked as deprecated upstream, but no `x-deprecated-reason` was set
	RecordedSignalScore float32 `json:"recorded_signal_score"`

	// ReviewScore Current 0.0–1.0 review score, computed at request time from the trade's size, the trader's win rate today, a bonus when a trader with a win rate above 55% trades at a price below 30¢, and the trade's age now. A higher score means read this trade first; it does not measure edge or predict an outcome. On a historical row it is today's view of the trade, not what a reader saw then; use recorded_review_score for that. Canonical since #16311; signal_score carries the same value.
	ReviewScore float32              `json:"review_score"`
	Side        LargeTradeDetailSide `json:"side"`

	// SignalScore Current 0.0–1.0 review score, computed at request time from the trader's win rate today and the trade's age now. Deprecated (#16311): `review_score` is the canonical spelling and carries the same value; this key stays on the wire.
	// Deprecated: this property has been marked as deprecated upstream, but no `x-deprecated-reason` was set
	SignalScore float32 `json:"signal_score"`
	SizeUsd     float32 `json:"size_usd"`

	// SuspicionScore Persisted live suspicion score from the scorer. Null when the row has no persisted score.
	SuspicionScore int `json:"suspicion_score"`

	// SuspicionTrack Persisted scorer track. Null when a legacy row has no stored track label.
	SuspicionTrack LargeTradeDetailSuspicionTrack `json:"suspicion_track"`

	// TokenId The Polymarket CLOB token id (ERC1155 asset id, decimal string) for the traded outcome; null when unavailable (e.g. unsynced markets) and for a Polymarket trade recorded before 2026-04-02T00:00:00Z, where the traded side is unknown.
	TokenId  string    `json:"token_id"`
	TradedAt time.Time `json:"traded_at"`
	Trader   struct {
		Address string `json:"address"`

		// Grade The trader's grade today, on every row however old. For what the grade was when the trade happened, read grade_at_trade.
		Grade *string `json:"grade,omitempty"`

		// GradeAtTrade The grade the trader held when the trade happened, from recorded grade history (recorded from 2026-09-19T23:00Z). Null unless grade_at_trade_status is graded. Never today's grade projected backward.
		GradeAtTrade LargeTradeDetailTraderGradeAtTrade `json:"grade_at_trade"`

		// GradeAtTradeStatus graded: grade_at_trade holds the recorded grade. ungraded: the trader was recorded without a grade at that moment. unknown: no record covers the moment, which is every trade before 2026-09-19T23:00Z and a trade that fell between a grade change and its confirmation. unknown never means ungraded.
		GradeAtTradeStatus LargeTradeDetailTraderGradeAtTradeStatus `json:"grade_at_trade_status"`
		Id                 string                                   `json:"id"`
		Username           *string                                  `json:"username,omitempty"`
	} `json:"trader"`
}

LargeTradeDetail defines model for LargeTradeDetail.

type LargeTradeDetailSide added in v0.4.0

type LargeTradeDetailSide string

LargeTradeDetailSide defines model for LargeTradeDetail.Side.

const (
	LargeTradeDetailSideBUY  LargeTradeDetailSide = "BUY"
	LargeTradeDetailSideSELL LargeTradeDetailSide = "SELL"
)

Defines values for LargeTradeDetailSide.

func (LargeTradeDetailSide) Valid added in v0.4.0

func (e LargeTradeDetailSide) Valid() bool

Valid indicates whether the value is a known member of the LargeTradeDetailSide enum.

type LargeTradeDetailSuspicionTrack added in v0.4.0

type LargeTradeDetailSuspicionTrack string

LargeTradeDetailSuspicionTrack Persisted scorer track. Null when a legacy row has no stored track label.

const (
	LargeTradeDetailSuspicionTrackFreshConviction LargeTradeDetailSuspicionTrack = "fresh_conviction"
	LargeTradeDetailSuspicionTrackSlicedPosition  LargeTradeDetailSuspicionTrack = "sliced_position"
	LargeTradeDetailSuspicionTrackWhale           LargeTradeDetailSuspicionTrack = "whale"
)

Defines values for LargeTradeDetailSuspicionTrack.

func (LargeTradeDetailSuspicionTrack) Valid added in v0.4.0

Valid indicates whether the value is a known member of the LargeTradeDetailSuspicionTrack enum.

type LargeTradeDetailTraderGradeAtTrade added in v0.4.0

type LargeTradeDetailTraderGradeAtTrade string

LargeTradeDetailTraderGradeAtTrade The grade the trader held when the trade happened, from recorded grade history (recorded from 2026-09-19T23:00Z). Null unless grade_at_trade_status is graded. Never today's grade projected backward.

const (
	LargeTradeDetailTraderGradeAtTradeA LargeTradeDetailTraderGradeAtTrade = "A"
	LargeTradeDetailTraderGradeAtTradeB LargeTradeDetailTraderGradeAtTrade = "B"
	LargeTradeDetailTraderGradeAtTradeC LargeTradeDetailTraderGradeAtTrade = "C"
	LargeTradeDetailTraderGradeAtTradeD LargeTradeDetailTraderGradeAtTrade = "D"
	LargeTradeDetailTraderGradeAtTradeF LargeTradeDetailTraderGradeAtTrade = "F"
	LargeTradeDetailTraderGradeAtTradeS LargeTradeDetailTraderGradeAtTrade = "S"
)

Defines values for LargeTradeDetailTraderGradeAtTrade.

func (LargeTradeDetailTraderGradeAtTrade) Valid added in v0.4.0

Valid indicates whether the value is a known member of the LargeTradeDetailTraderGradeAtTrade enum.

type LargeTradeDetailTraderGradeAtTradeStatus added in v0.4.0

type LargeTradeDetailTraderGradeAtTradeStatus string

LargeTradeDetailTraderGradeAtTradeStatus graded: grade_at_trade holds the recorded grade. ungraded: the trader was recorded without a grade at that moment. unknown: no record covers the moment, which is every trade before 2026-09-19T23:00Z and a trade that fell between a grade change and its confirmation. unknown never means ungraded.

const (
	LargeTradeDetailTraderGradeAtTradeStatusGraded   LargeTradeDetailTraderGradeAtTradeStatus = "graded"
	LargeTradeDetailTraderGradeAtTradeStatusUngraded LargeTradeDetailTraderGradeAtTradeStatus = "ungraded"
	LargeTradeDetailTraderGradeAtTradeStatusUnknown  LargeTradeDetailTraderGradeAtTradeStatus = "unknown"
)

Defines values for LargeTradeDetailTraderGradeAtTradeStatus.

func (LargeTradeDetailTraderGradeAtTradeStatus) Valid added in v0.4.0

Valid indicates whether the value is a known member of the LargeTradeDetailTraderGradeAtTradeStatus enum.

type LargeTradeHistoryMeta added in v0.4.0

type LargeTradeHistoryMeta struct {
	// CacheAgeS Cache age in seconds; the key is absent when the response was not cached.
	CacheAgeS    *int `json:"cache_age_s,omitempty"`
	Cached       bool `json:"cached"`
	Completeness struct {
		// Reason Explains that local replay completeness can vary by market and time window.
		Reason string                                  `json:"reason"`
		Status LargeTradeHistoryMetaCompletenessStatus `json:"status"`
	} `json:"completeness"`

	// RequestId Unique request ID (req_ prefix). The same value as the X-Request-Id response header, the request's usage accounting row and its log lines.
	RequestId string `json:"request_id"`
	Source    struct {
		Kind                       LargeTradeHistoryMetaSourceKind                       `json:"kind"`
		ProviderFetchAtRequestTime LargeTradeHistoryMetaSourceProviderFetchAtRequestTime `json:"provider_fetch_at_request_time"`
		Table                      LargeTradeHistoryMetaSourceTable                      `json:"table"`
	} `json:"source"`
}

LargeTradeHistoryMeta defines model for LargeTradeHistoryMeta.

type LargeTradeHistoryMetaCompletenessStatus added in v0.4.0

type LargeTradeHistoryMetaCompletenessStatus string

LargeTradeHistoryMetaCompletenessStatus defines model for LargeTradeHistoryMeta.Completeness.Status.

const (
	BestEffort LargeTradeHistoryMetaCompletenessStatus = "best_effort"
)

Defines values for LargeTradeHistoryMetaCompletenessStatus.

func (LargeTradeHistoryMetaCompletenessStatus) Valid added in v0.4.0

Valid indicates whether the value is a known member of the LargeTradeHistoryMetaCompletenessStatus enum.

type LargeTradeHistoryMetaSourceKind added in v0.4.0

type LargeTradeHistoryMetaSourceKind string

LargeTradeHistoryMetaSourceKind defines model for LargeTradeHistoryMeta.Source.Kind.

const (
	LocalReplay LargeTradeHistoryMetaSourceKind = "local_replay"
)

Defines values for LargeTradeHistoryMetaSourceKind.

func (LargeTradeHistoryMetaSourceKind) Valid added in v0.4.0

Valid indicates whether the value is a known member of the LargeTradeHistoryMetaSourceKind enum.

type LargeTradeHistoryMetaSourceProviderFetchAtRequestTime added in v0.4.0

type LargeTradeHistoryMetaSourceProviderFetchAtRequestTime bool

LargeTradeHistoryMetaSourceProviderFetchAtRequestTime defines model for LargeTradeHistoryMeta.Source.ProviderFetchAtRequestTime.

const (
	LargeTradeHistoryMetaSourceProviderFetchAtRequestTimeFalse LargeTradeHistoryMetaSourceProviderFetchAtRequestTime = false
)

Defines values for LargeTradeHistoryMetaSourceProviderFetchAtRequestTime.

func (LargeTradeHistoryMetaSourceProviderFetchAtRequestTime) Valid added in v0.4.0

Valid indicates whether the value is a known member of the LargeTradeHistoryMetaSourceProviderFetchAtRequestTime enum.

type LargeTradeHistoryMetaSourceTable added in v0.4.0

type LargeTradeHistoryMetaSourceTable string

LargeTradeHistoryMetaSourceTable defines model for LargeTradeHistoryMeta.Source.Table.

const (
	LargeTradeHistoryMetaSourceTableWhaleAlerts LargeTradeHistoryMetaSourceTable = "whale_alerts"
)

Defines values for LargeTradeHistoryMetaSourceTable.

func (LargeTradeHistoryMetaSourceTable) Valid added in v0.4.0

Valid indicates whether the value is a known member of the LargeTradeHistoryMetaSourceTable enum.

type LargeTradeSide added in v0.4.0

type LargeTradeSide string

LargeTradeSide defines model for LargeTrade.Side.

const (
	LargeTradeSideBUY  LargeTradeSide = "BUY"
	LargeTradeSideSELL LargeTradeSide = "SELL"
)

Defines values for LargeTradeSide.

func (LargeTradeSide) Valid added in v0.4.0

func (e LargeTradeSide) Valid() bool

Valid indicates whether the value is a known member of the LargeTradeSide enum.

type LargeTradeSubscriptionFilters added in v0.4.0

type LargeTradeSubscriptionFilters struct {
	// ConditionId Raw provider condition ID or mkt_-prefixed market ID.
	ConditionId *string `json:"condition_id,omitempty"`

	// MinGrade S is best; ungraded trades do not match.
	MinGrade *LargeTradeSubscriptionFiltersMinGrade `json:"min_grade,omitempty"`

	// MinSizeUsd Positive USD notional as an exact decimal string.
	MinSizeUsd *string `json:"min_size_usd,omitempty"`

	// Wallet Polymarket wallet address; matching is case-insensitive.
	Wallet *string `json:"wallet,omitempty"`
}

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.

type LargeTradeSubscriptionFiltersMinGrade added in v0.4.0

type LargeTradeSubscriptionFiltersMinGrade string

LargeTradeSubscriptionFiltersMinGrade S is best; ungraded trades do not match.

const (
	LargeTradeSubscriptionFiltersMinGradeA LargeTradeSubscriptionFiltersMinGrade = "A"
	LargeTradeSubscriptionFiltersMinGradeB LargeTradeSubscriptionFiltersMinGrade = "B"
	LargeTradeSubscriptionFiltersMinGradeC LargeTradeSubscriptionFiltersMinGrade = "C"
	LargeTradeSubscriptionFiltersMinGradeD LargeTradeSubscriptionFiltersMinGrade = "D"
	LargeTradeSubscriptionFiltersMinGradeF LargeTradeSubscriptionFiltersMinGrade = "F"
	LargeTradeSubscriptionFiltersMinGradeS LargeTradeSubscriptionFiltersMinGrade = "S"
)

Defines values for LargeTradeSubscriptionFiltersMinGrade.

func (LargeTradeSubscriptionFiltersMinGrade) Valid added in v0.4.0

Valid indicates whether the value is a known member of the LargeTradeSubscriptionFiltersMinGrade enum.

type LargeTradeSuspicionTrack added in v0.4.0

type LargeTradeSuspicionTrack string

LargeTradeSuspicionTrack Persisted scorer track. Null when a legacy row has no stored track label.

const (
	LargeTradeSuspicionTrackFreshConviction LargeTradeSuspicionTrack = "fresh_conviction"
	LargeTradeSuspicionTrackSlicedPosition  LargeTradeSuspicionTrack = "sliced_position"
	LargeTradeSuspicionTrackWhale           LargeTradeSuspicionTrack = "whale"
)

Defines values for LargeTradeSuspicionTrack.

func (LargeTradeSuspicionTrack) Valid added in v0.4.0

func (e LargeTradeSuspicionTrack) Valid() bool

Valid indicates whether the value is a known member of the LargeTradeSuspicionTrack enum.

type LargeTradeTraderGradeAtTrade added in v0.4.0

type LargeTradeTraderGradeAtTrade string

LargeTradeTraderGradeAtTrade The grade the trader held when the trade happened, from recorded grade history (recorded from 2026-09-19T23:00Z). Null unless grade_at_trade_status is graded. Never today's grade projected backward.

const (
	LargeTradeTraderGradeAtTradeA LargeTradeTraderGradeAtTrade = "A"
	LargeTradeTraderGradeAtTradeB LargeTradeTraderGradeAtTrade = "B"
	LargeTradeTraderGradeAtTradeC LargeTradeTraderGradeAtTrade = "C"
	LargeTradeTraderGradeAtTradeD LargeTradeTraderGradeAtTrade = "D"
	LargeTradeTraderGradeAtTradeF LargeTradeTraderGradeAtTrade = "F"
	LargeTradeTraderGradeAtTradeS LargeTradeTraderGradeAtTrade = "S"
)

Defines values for LargeTradeTraderGradeAtTrade.

func (LargeTradeTraderGradeAtTrade) Valid added in v0.4.0

Valid indicates whether the value is a known member of the LargeTradeTraderGradeAtTrade enum.

type LargeTradeTraderGradeAtTradeStatus added in v0.4.0

type LargeTradeTraderGradeAtTradeStatus string

LargeTradeTraderGradeAtTradeStatus graded: grade_at_trade holds the recorded grade. ungraded: the trader was recorded without a grade at that moment. unknown: no record covers the moment, which is every trade before 2026-09-19T23:00Z and a trade that fell between a grade change and its confirmation. unknown never means ungraded.

const (
	LargeTradeTraderGradeAtTradeStatusGraded   LargeTradeTraderGradeAtTradeStatus = "graded"
	LargeTradeTraderGradeAtTradeStatusUngraded LargeTradeTraderGradeAtTradeStatus = "ungraded"
	LargeTradeTraderGradeAtTradeStatusUnknown  LargeTradeTraderGradeAtTradeStatus = "unknown"
)

Defines values for LargeTradeTraderGradeAtTradeStatus.

func (LargeTradeTraderGradeAtTradeStatus) Valid added in v0.4.0

Valid indicates whether the value is a known member of the LargeTradeTraderGradeAtTradeStatus enum.

type LeaderboardEntry

type LeaderboardEntry struct {
	Address       string     `json:"address"`
	Grade         *string    `json:"grade,omitempty"`
	Id            string     `json:"id"`
	LastActive    *time.Time `json:"last_active,omitempty"`
	MarketsTraded *int       `json:"markets_traded,omitempty"`

	// Platform Provider platform. Always polymarket.
	Platform LeaderboardEntryPlatform `json:"platform"`

	// Pnl All-time P&L in USD (total_pnl), including unrealized open positions. Kept for back-compat; prefer realized_pnl for the banked figure.
	Pnl *float32 `json:"pnl,omitempty"`

	// RealizedPnl Native realized P&L plus credited maker and taker rebates in USD, with fees already included. The exact numeric value is truncated toward zero to cents before JSON conversion. Wallets without a native snapshot retain their historical stored realized P&L. Omitted when the native snapshot has no net realized value.
	RealizedPnl  *float32 `json:"realized_pnl,omitempty"`
	Score        *float32 `json:"score,omitempty"`
	StrategyType *string  `json:"strategy_type,omitempty"`

	// StreakTier Hot-streak tier (trailing-7d cross-sectional percentile); a separate axis from the all-time grade. Omitted when there is no recent activity.
	StreakTier *LeaderboardEntryStreakTier `json:"streak_tier,omitempty"`
	Username   *string                     `json:"username,omitempty"`

	// Volume Full-history both-sides USD cash volume from a verified Polymarket user-volume observation. Omitted without coverage.
	Volume *float32 `json:"volume,omitempty"`

	// WinRate The wallet's win rate across ALL categories, not the filtered one. ?category= decides WHICH wallets are listed (the wallet must be ranked in that category); it does not rescope this field, so a soccer-filtered list still reports each wallet's overall rate. For a per-category record use GET /api/v1/trader/{address}/categories.
	WinRate *float32 `json:"win_rate,omitempty"`
}

LeaderboardEntry defines model for LeaderboardEntry.

type LeaderboardEntryPlatform added in v0.4.0

type LeaderboardEntryPlatform string

LeaderboardEntryPlatform Provider platform. Always polymarket.

const (
	LeaderboardEntryPlatformPolymarket LeaderboardEntryPlatform = "polymarket"
)

Defines values for LeaderboardEntryPlatform.

func (LeaderboardEntryPlatform) Valid added in v0.4.0

func (e LeaderboardEntryPlatform) Valid() bool

Valid indicates whether the value is a known member of the LeaderboardEntryPlatform enum.

type LeaderboardEntryStreakTier

type LeaderboardEntryStreakTier string

LeaderboardEntryStreakTier Hot-streak tier (trailing-7d cross-sectional percentile); a separate axis from the all-time grade. Omitted when there is no recent activity.

const (
	LeaderboardEntryStreakTierCold    LeaderboardEntryStreakTier = "cold"
	LeaderboardEntryStreakTierCooling LeaderboardEntryStreakTier = "cooling"
	LeaderboardEntryStreakTierHot     LeaderboardEntryStreakTier = "hot"
	LeaderboardEntryStreakTierNeutral LeaderboardEntryStreakTier = "neutral"
	LeaderboardEntryStreakTierRising  LeaderboardEntryStreakTier = "rising"
)

Defines values for LeaderboardEntryStreakTier.

func (LeaderboardEntryStreakTier) Valid

func (e LeaderboardEntryStreakTier) Valid() bool

Valid indicates whether the value is a known member of the LeaderboardEntryStreakTier enum.

type ListGames200JSONResponseBodyObject added in v0.4.0

type ListGames200JSONResponseBodyObject string

ListGames200JSONResponseBodyObject defines parameters for ListGames.

const (
	ListGames200JSONResponseBodyObjectList ListGames200JSONResponseBodyObject = "list"
)

Defines values for ListGames200JSONResponseBodyObject.

func (ListGames200JSONResponseBodyObject) Valid added in v0.4.0

Valid indicates whether the value is a known member of the ListGames200JSONResponseBodyObject enum.

type ListGamesParams added in v0.4.0

type ListGamesParams struct {
	// Sport Canonical sport bucket, case-insensitive, with - and _ read as a space: table-tennis and Table Tennis are the same bucket. Omit for every covered sport. A bucket this deployment does not serve returns an empty page.
	Sport *string `form:"sport,omitempty" json:"sport,omitempty"`

	// League League tag, case-insensitive, as coverage.leagues spells it: nfl, epl, cs2. Omit for every league inside the selected sports.
	League *string `form:"league,omitempty" json:"league,omitempty"`

	// Status Keep only games in this state. A value outside the enum returns an empty page.
	Status *ListGamesParamsStatus `form:"status,omitempty" json:"status,omitempty"`

	// StartsAfter RFC 3339 instant. Keep only games whose kickoff is at or after it. Games with no published kickoff are excluded whenever either bound is set.
	StartsAfter *time.Time `form:"starts_after,omitempty" json:"starts_after,omitempty"`

	// StartsBefore RFC 3339 instant. Keep only games whose kickoff is at or before it. Must be at or after starts_after.
	StartsBefore *time.Time `form:"starts_before,omitempty" json:"starts_before,omitempty"`

	// Limit Page size. Out-of-range values are clamped to 1..100.
	Limit *int `form:"limit,omitempty" json:"limit,omitempty"`

	// Cursor Opaque gms_v1_ cursor from next_cursor. It pins the page position (kickoff and event_slug), not a snapshot: the catalog is live, so a game added or removed between pages moves with it. A cursor this endpoint did not issue returns 400 with error.param=cursor.
	Cursor *string `form:"cursor,omitempty" json:"cursor,omitempty"`

	// XQueryValidation Opt into strict query-name validation. The default is compatible: unknown names are ignored and reported in X-Query-Ignored. With strict, an unknown name returns 400 bad_request with error.reason unknown_query_parameter before the handler runs, including when its percent escape is incomplete.
	XQueryValidation *ListGamesParamsXQueryValidation `json:"X-Query-Validation,omitempty"`

	// IfNoneMatch Conditional GET using a weak semantic ETag from an earlier response. A matching payload returns 304 with an empty body; request_id, cost and as_of are excluded from the validator, so a rebuilt but unchanged catalog still revalidates.
	IfNoneMatch *string `json:"If-None-Match,omitempty"`
}

ListGamesParams defines parameters for ListGames.

type ListGamesParamsStatus added in v0.4.0

type ListGamesParamsStatus string

ListGamesParamsStatus defines parameters for ListGames.

const (
	ListGamesParamsStatusCancelled ListGamesParamsStatus = "cancelled"
	ListGamesParamsStatusDelayed   ListGamesParamsStatus = "delayed"
	ListGamesParamsStatusEnded     ListGamesParamsStatus = "ended"
	ListGamesParamsStatusLive      ListGamesParamsStatus = "live"
	ListGamesParamsStatusPaused    ListGamesParamsStatus = "paused"
	ListGamesParamsStatusPostponed ListGamesParamsStatus = "postponed"
	ListGamesParamsStatusScheduled ListGamesParamsStatus = "scheduled"
	ListGamesParamsStatusSuspended ListGamesParamsStatus = "suspended"
	ListGamesParamsStatusUnknown   ListGamesParamsStatus = "unknown"
)

Defines values for ListGamesParamsStatus.

func (ListGamesParamsStatus) Valid added in v0.4.0

func (e ListGamesParamsStatus) Valid() bool

Valid indicates whether the value is a known member of the ListGamesParamsStatus enum.

type ListGamesParamsXQueryValidation added in v0.4.0

type ListGamesParamsXQueryValidation string

ListGamesParamsXQueryValidation defines parameters for ListGames.

const (
	ListGamesParamsXQueryValidationStrict ListGamesParamsXQueryValidation = "strict"
)

Defines values for ListGamesParamsXQueryValidation.

func (ListGamesParamsXQueryValidation) Valid added in v0.4.0

Valid indicates whether the value is a known member of the ListGamesParamsXQueryValidation enum.

type ListGamesResponse added in v0.4.0

type ListGamesResponse struct {
	Body         []byte
	HTTPResponse *http.Response
	// JSON200 the response for an HTTP 200 `application/json` response
	JSON200 *struct {
		// AsOf When this read assembled the catalog. Per-source vintage is on each game's freshness.
		AsOf time.Time `json:"as_of"`

		// Coverage 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.
		Coverage GamesCoverage `json:"coverage"`
		Data     []Game        `json:"data"`
		HasMore  bool          `json:"has_more"`
		Meta     ResponseMeta  `json:"meta"`

		// NextCursor Pass as cursor for the next page. Present only when has_more is true.
		NextCursor *string                            `json:"next_cursor,omitempty"`
		Object     ListGames200JSONResponseBodyObject `json:"object"`
	}
	// JSON400 the response for an HTTP 400 `application/json` response
	JSON400 *ApiError
	// JSON401 the response for an HTTP 401 `application/json` response
	JSON401 *ApiError
	// JSON402 the response for an HTTP 402 `application/json` response
	JSON402 *ApiError
	// JSON403 the response for an HTTP 403 `application/json` response
	JSON403 *ApiError
	// JSON408 the response for an HTTP 408 `application/json` response
	JSON408 *ApiError
	// JSON423 the response for an HTTP 423 `application/json` response
	JSON423 *ApiError
	// JSON429 the response for an HTTP 429 `application/json` response
	JSON429 *ApiError
	// JSON500 the response for an HTTP 500 `application/json` response
	JSON500 *ApiError
	// JSON503 the response for an HTTP 503 `application/json` response
	JSON503 *ApiError
	// Headers200 the parsed response headers for an HTTP 200 response
	Headers200 *ListGamesResponse200Headers
	// Headers304 the parsed response headers for an HTTP 304 response
	Headers304 *ListGamesResponse304Headers
	// Headers429 the parsed response headers for an HTTP 429 response
	Headers429 *ListGamesResponse429Headers
}

func ParseListGamesResponse added in v0.4.0

func ParseListGamesResponse(rsp *http.Response) (*ListGamesResponse, error)

ParseListGamesResponse parses an HTTP response from a ListGamesWithResponse call

func (ListGamesResponse) ContentType added in v0.4.0

func (r ListGamesResponse) ContentType() string

ContentType is a convenience method to retrieve the Content-Type value from the HTTP response headers

func (ListGamesResponse) GetBody added in v0.4.0

func (r ListGamesResponse) GetBody() []byte

GetBody returns the raw response body bytes

func (ListGamesResponse) GetJSON200 added in v0.4.0

func (r ListGamesResponse) GetJSON200() *struct {
	// AsOf When this read assembled the catalog. Per-source vintage is on each game's freshness.
	AsOf time.Time `json:"as_of"`

	// Coverage 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.
	Coverage GamesCoverage `json:"coverage"`
	Data     []Game        `json:"data"`
	HasMore  bool          `json:"has_more"`
	Meta     ResponseMeta  `json:"meta"`

	// NextCursor Pass as cursor for the next page. Present only when has_more is true.
	NextCursor *string                            `json:"next_cursor,omitempty"`
	Object     ListGames200JSONResponseBodyObject `json:"object"`
}

GetJSON200 returns the response for an HTTP 200 `application/json` response

func (ListGamesResponse) GetJSON400 added in v0.4.0

func (r ListGamesResponse) GetJSON400() *ApiError

GetJSON400 returns the response for an HTTP 400 `application/json` response

func (ListGamesResponse) GetJSON401 added in v0.4.0

func (r ListGamesResponse) GetJSON401() *ApiError

GetJSON401 returns the response for an HTTP 401 `application/json` response

func (ListGamesResponse) GetJSON402 added in v0.4.0

func (r ListGamesResponse) GetJSON402() *ApiError

GetJSON402 returns the response for an HTTP 402 `application/json` response

func (ListGamesResponse) GetJSON403 added in v0.4.0

func (r ListGamesResponse) GetJSON403() *ApiError

GetJSON403 returns the response for an HTTP 403 `application/json` response

func (ListGamesResponse) GetJSON408 added in v0.4.0

func (r ListGamesResponse) GetJSON408() *ApiError

GetJSON408 returns the response for an HTTP 408 `application/json` response

func (ListGamesResponse) GetJSON423 added in v0.4.0

func (r ListGamesResponse) GetJSON423() *ApiError

GetJSON423 returns the response for an HTTP 423 `application/json` response

func (ListGamesResponse) GetJSON429 added in v0.4.0

func (r ListGamesResponse) GetJSON429() *ApiError

GetJSON429 returns the response for an HTTP 429 `application/json` response

func (ListGamesResponse) GetJSON500 added in v0.4.0

func (r ListGamesResponse) GetJSON500() *ApiError

GetJSON500 returns the response for an HTTP 500 `application/json` response

func (ListGamesResponse) GetJSON503 added in v0.4.0

func (r ListGamesResponse) GetJSON503() *ApiError

GetJSON503 returns the response for an HTTP 503 `application/json` response

func (ListGamesResponse) Status added in v0.4.0

func (r ListGamesResponse) Status() string

Status returns HTTPResponse.Status

func (ListGamesResponse) StatusCode added in v0.4.0

func (r ListGamesResponse) StatusCode() int

StatusCode returns HTTPResponse.StatusCode

type ListGamesResponse200Headers added in v0.4.0

type ListGamesResponse200Headers struct {
	ETag                *string
	RateLimitLimit      *int
	RateLimitRemaining  *int
	RateLimitReset      *int
	ServerTiming        *string
	XEffectiveQuery     *string
	XQueryIgnored       *string
	XRateLimitLimit     *int
	XRateLimitRemaining *int
	XRateLimitReset     *int
	XRequestId          *string
	XUsageAccounting    *string
}

ListGamesResponse200Headers the declared response headers of an HTTP 200 response for ListGames

type ListGamesResponse304Headers added in v0.4.0

type ListGamesResponse304Headers struct {
	ETag                *string
	RateLimitLimit      *int
	RateLimitRemaining  *int
	RateLimitReset      *int
	ServerTiming        *string
	XEffectiveQuery     *string
	XQueryIgnored       *string
	XRateLimitLimit     *int
	XRateLimitRemaining *int
	XRateLimitReset     *int
	XRequestId          *string
	XUsageAccounting    *string
}

ListGamesResponse304Headers the declared response headers of an HTTP 304 response for ListGames

type ListGamesResponse429Headers added in v0.4.0

type ListGamesResponse429Headers struct {
	RateLimitLimit      *int
	RateLimitRemaining  *int
	RateLimitReset      *int
	RetryAfter          *int
	XRateLimitLimit     *int
	XRateLimitRemaining *int
	XRateLimitReset     *int
	XRequestId          *string
}

ListGamesResponse429Headers the declared response headers of an HTTP 429 response for ListGames

type ListInsiderRadar200JSONResponseBodyObject

type ListInsiderRadar200JSONResponseBodyObject string

ListInsiderRadar200JSONResponseBodyObject defines parameters for ListInsiderRadar.

const (
	ListInsiderRadar200JSONResponseBodyObjectList ListInsiderRadar200JSONResponseBodyObject = "list"
)

Defines values for ListInsiderRadar200JSONResponseBodyObject.

func (ListInsiderRadar200JSONResponseBodyObject) Valid

Valid indicates whether the value is a known member of the ListInsiderRadar200JSONResponseBodyObject enum.

type ListInsiderRadarParams

type ListInsiderRadarParams struct {
	// Limit Maximum number of radar flags to return. Out-of-range values are clamped to 1..100.
	Limit *int `form:"limit,omitempty" json:"limit,omitempty"`

	// Cursor Pagination cursor from previous response.
	Cursor *string `form:"cursor,omitempty" json:"cursor,omitempty"`

	// MinSuspicion Minimum suspicion score (0-100). The live flag floor of 60 also applies.
	MinSuspicion *float32 `form:"min_suspicion,omitempty" json:"min_suspicion,omitempty"`

	// Severity Compatible filter. flag selects live threshold crossings. watch returns no rows because no live watch policy exists.
	Severity *ListInsiderRadarParamsSeverity `form:"severity,omitempty" json:"severity,omitempty"`

	// Mode Pagination mode. live (default) keeps the 120-second response cache; stable pins the walk to one published scoring generation and binds the cursor to the limit and filters.
	Mode *ListInsiderRadarParamsMode `form:"mode,omitempty" json:"mode,omitempty"`

	// XQueryValidation Opt into strict query-name validation. The default is compatible: unknown names are ignored and reported in X-Query-Ignored. With strict, an unknown name returns 400 bad_request with error.reason unknown_query_parameter before the handler runs, including when its percent escape is incomplete.
	XQueryValidation *ListInsiderRadarParamsXQueryValidation `json:"X-Query-Validation,omitempty"`

	// IfNoneMatch Conditional GET validator from a previous ETag. Matching values return 304 Not Modified with an empty body.
	IfNoneMatch *string `json:"If-None-Match,omitempty"`
}

ListInsiderRadarParams defines parameters for ListInsiderRadar.

type ListInsiderRadarParamsMode added in v0.3.0

type ListInsiderRadarParamsMode string

ListInsiderRadarParamsMode defines parameters for ListInsiderRadar.

const (
	ListInsiderRadarParamsModeLive   ListInsiderRadarParamsMode = "live"
	ListInsiderRadarParamsModeStable ListInsiderRadarParamsMode = "stable"
)

Defines values for ListInsiderRadarParamsMode.

func (ListInsiderRadarParamsMode) Valid added in v0.3.0

func (e ListInsiderRadarParamsMode) Valid() bool

Valid indicates whether the value is a known member of the ListInsiderRadarParamsMode enum.

type ListInsiderRadarParamsSeverity

type ListInsiderRadarParamsSeverity string

ListInsiderRadarParamsSeverity defines parameters for ListInsiderRadar.

const (
	ListInsiderRadarParamsSeverityFlag  ListInsiderRadarParamsSeverity = "flag"
	ListInsiderRadarParamsSeverityWatch ListInsiderRadarParamsSeverity = "watch"
)

Defines values for ListInsiderRadarParamsSeverity.

func (ListInsiderRadarParamsSeverity) Valid

Valid indicates whether the value is a known member of the ListInsiderRadarParamsSeverity enum.

type ListInsiderRadarParamsXQueryValidation added in v0.3.0

type ListInsiderRadarParamsXQueryValidation string

ListInsiderRadarParamsXQueryValidation defines parameters for ListInsiderRadar.

const (
	ListInsiderRadarParamsXQueryValidationStrict ListInsiderRadarParamsXQueryValidation = "strict"
)

Defines values for ListInsiderRadarParamsXQueryValidation.

func (ListInsiderRadarParamsXQueryValidation) Valid added in v0.3.0

Valid indicates whether the value is a known member of the ListInsiderRadarParamsXQueryValidation enum.

type ListInsiderRadarResponse

type ListInsiderRadarResponse struct {
	Body         []byte
	HTTPResponse *http.Response
	// JSON200 the response for an HTTP 200 `application/json` response
	JSON200 *struct {
		Data       []SuspiciousTrade                         `json:"data"`
		HasMore    bool                                      `json:"has_more"`
		Meta       ResponseMeta                              `json:"meta"`
		NextCursor *string                                   `json:"next_cursor,omitempty"`
		Object     ListInsiderRadar200JSONResponseBodyObject `json:"object"`

		// Total Total matching rows when the read model exposes a count; the key is absent when it does not.
		Total *int `json:"total,omitempty"`
	}
	// JSON400 the response for an HTTP 400 `application/json` response
	JSON400 *ApiError
	// JSON401 the response for an HTTP 401 `application/json` response
	JSON401 *ApiError
	// JSON402 the response for an HTTP 402 `application/json` response
	JSON402 *ApiError
	// JSON403 the response for an HTTP 403 `application/json` response
	JSON403 *ApiError
	// JSON408 the response for an HTTP 408 `application/json` response
	JSON408 *ApiError
	// JSON423 the response for an HTTP 423 `application/json` response
	JSON423 *ApiError
	// JSON429 the response for an HTTP 429 `application/json` response
	JSON429 *ApiError
	// JSON500 the response for an HTTP 500 `application/json` response
	JSON500 *ApiError
	// JSON503 the response for an HTTP 503 `application/json` response
	JSON503 *ApiError
	// Headers200 the parsed response headers for an HTTP 200 response
	Headers200 *ListInsiderRadarResponse200Headers
	// Headers304 the parsed response headers for an HTTP 304 response
	Headers304 *ListInsiderRadarResponse304Headers
	// Headers429 the parsed response headers for an HTTP 429 response
	Headers429 *ListInsiderRadarResponse429Headers
	// Headers503 the parsed response headers for an HTTP 503 response
	Headers503 *ListInsiderRadarResponse503Headers
}

func ParseListInsiderRadarResponse

func ParseListInsiderRadarResponse(rsp *http.Response) (*ListInsiderRadarResponse, error)

ParseListInsiderRadarResponse parses an HTTP response from a ListInsiderRadarWithResponse call

func (ListInsiderRadarResponse) ContentType

func (r ListInsiderRadarResponse) ContentType() string

ContentType is a convenience method to retrieve the Content-Type value from the HTTP response headers

func (ListInsiderRadarResponse) GetBody

func (r ListInsiderRadarResponse) GetBody() []byte

GetBody returns the raw response body bytes

func (ListInsiderRadarResponse) GetJSON200

func (r ListInsiderRadarResponse) GetJSON200() *struct {
	Data       []SuspiciousTrade                         `json:"data"`
	HasMore    bool                                      `json:"has_more"`
	Meta       ResponseMeta                              `json:"meta"`
	NextCursor *string                                   `json:"next_cursor,omitempty"`
	Object     ListInsiderRadar200JSONResponseBodyObject `json:"object"`

	// Total Total matching rows when the read model exposes a count; the key is absent when it does not.
	Total *int `json:"total,omitempty"`
}

GetJSON200 returns the response for an HTTP 200 `application/json` response

func (ListInsiderRadarResponse) GetJSON400

func (r ListInsiderRadarResponse) GetJSON400() *ApiError

GetJSON400 returns the response for an HTTP 400 `application/json` response

func (ListInsiderRadarResponse) GetJSON401

func (r ListInsiderRadarResponse) GetJSON401() *ApiError

GetJSON401 returns the response for an HTTP 401 `application/json` response

func (ListInsiderRadarResponse) GetJSON402

func (r ListInsiderRadarResponse) GetJSON402() *ApiError

GetJSON402 returns the response for an HTTP 402 `application/json` response

func (ListInsiderRadarResponse) GetJSON403

func (r ListInsiderRadarResponse) GetJSON403() *ApiError

GetJSON403 returns the response for an HTTP 403 `application/json` response

func (ListInsiderRadarResponse) GetJSON408 added in v0.2.0

func (r ListInsiderRadarResponse) GetJSON408() *ApiError

GetJSON408 returns the response for an HTTP 408 `application/json` response

func (ListInsiderRadarResponse) GetJSON423

func (r ListInsiderRadarResponse) GetJSON423() *ApiError

GetJSON423 returns the response for an HTTP 423 `application/json` response

func (ListInsiderRadarResponse) GetJSON429

func (r ListInsiderRadarResponse) GetJSON429() *ApiError

GetJSON429 returns the response for an HTTP 429 `application/json` response

func (ListInsiderRadarResponse) GetJSON500 added in v0.4.0

func (r ListInsiderRadarResponse) GetJSON500() *ApiError

GetJSON500 returns the response for an HTTP 500 `application/json` response

func (ListInsiderRadarResponse) GetJSON503

func (r ListInsiderRadarResponse) GetJSON503() *ApiError

GetJSON503 returns the response for an HTTP 503 `application/json` response

func (ListInsiderRadarResponse) Status

func (r ListInsiderRadarResponse) Status() string

Status returns HTTPResponse.Status

func (ListInsiderRadarResponse) StatusCode

func (r ListInsiderRadarResponse) StatusCode() int

StatusCode returns HTTPResponse.StatusCode

type ListInsiderRadarResponse200Headers

type ListInsiderRadarResponse200Headers struct {
	ETag                *string
	RateLimitLimit      *int
	RateLimitRemaining  *int
	RateLimitReset      *int
	ServerTiming        *string
	XEffectiveQuery     *string
	XQueryIgnored       *string
	XRateLimitLimit     *int
	XRateLimitRemaining *int
	XRateLimitReset     *int
	XRequestId          *string
	XUsageAccounting    *string
}

ListInsiderRadarResponse200Headers the declared response headers of an HTTP 200 response for ListInsiderRadar

type ListInsiderRadarResponse304Headers

type ListInsiderRadarResponse304Headers struct {
	ETag                *string
	RateLimitLimit      *int
	RateLimitRemaining  *int
	RateLimitReset      *int
	ServerTiming        *string
	XEffectiveQuery     *string
	XQueryIgnored       *string
	XRateLimitLimit     *int
	XRateLimitRemaining *int
	XRateLimitReset     *int
	XRequestId          *string
	XUsageAccounting    *string
}

ListInsiderRadarResponse304Headers the declared response headers of an HTTP 304 response for ListInsiderRadar

type ListInsiderRadarResponse429Headers

type ListInsiderRadarResponse429Headers struct {
	RateLimitLimit      *int
	RateLimitRemaining  *int
	RateLimitReset      *int
	RetryAfter          *int
	XRateLimitLimit     *int
	XRateLimitRemaining *int
	XRateLimitReset     *int
	XRequestId          *string
}

ListInsiderRadarResponse429Headers the declared response headers of an HTTP 429 response for ListInsiderRadar

type ListInsiderRadarResponse503Headers

type ListInsiderRadarResponse503Headers struct {
	RetryAfter *int
	XRequestId *string
}

ListInsiderRadarResponse503Headers the declared response headers of an HTTP 503 response for ListInsiderRadar

type ListLargePositions200JSONResponseBodyObject

type ListLargePositions200JSONResponseBodyObject string

ListLargePositions200JSONResponseBodyObject defines parameters for ListLargePositions.

const (
	ListLargePositions200JSONResponseBodyObjectList ListLargePositions200JSONResponseBodyObject = "list"
)

Defines values for ListLargePositions200JSONResponseBodyObject.

func (ListLargePositions200JSONResponseBodyObject) Valid

Valid indicates whether the value is a known member of the ListLargePositions200JSONResponseBodyObject enum.

type ListLargePositionsParams

type ListLargePositionsParams struct {
	// Limit Maximum number of large positions to return. Out-of-range values are clamped to 1..100.
	Limit *int `form:"limit,omitempty" json:"limit,omitempty"`

	// Cursor Opaque pagination cursor from a previous response.
	Cursor *string `form:"cursor,omitempty" json:"cursor,omitempty"`

	// MinSize Minimum position value in USD. Raises the feed's own floor of 50,000 USD; a smaller value does not lower it.
	MinSize *float32 `form:"min_size,omitempty" json:"min_size,omitempty"`

	// Category One RFC 4180 CSV record of exact current provider-backed market_canonical.category values. Legacy unquoted lists such as NBA,WNBA remain valid; values containing commas, quotes, or newlines are CSV-quoted. Matching is case-insensitive. Malformed quoted input fails closed as one unknown exact category.
	Category *string `form:"category,omitempty" json:"category,omitempty"`

	// MinGrade Minimum trader grade.
	MinGrade *ListLargePositionsParamsMinGrade `form:"min_grade,omitempty" json:"min_grade,omitempty"`

	// ConditionId Scope to one market. Accepts the raw provider condition_id or the mkt_-prefixed market id (round-trips a value from a list response). Must be 0x followed by 64 hexadecimal characters after any mkt_ prefix is stripped; any other value returns 400. Polymarket-only; an unknown but well-formed id returns [].
	ConditionId *string `form:"condition_id,omitempty" json:"condition_id,omitempty"`

	// XQueryValidation Opt into strict query-name validation. The default is compatible: unknown names are ignored and reported in X-Query-Ignored. With strict, an unknown name returns 400 bad_request with error.reason unknown_query_parameter before the handler runs, including when its percent escape is incomplete.
	XQueryValidation *ListLargePositionsParamsXQueryValidation `json:"X-Query-Validation,omitempty"`
}

ListLargePositionsParams defines parameters for ListLargePositions.

type ListLargePositionsParamsMinGrade

type ListLargePositionsParamsMinGrade string

ListLargePositionsParamsMinGrade defines parameters for ListLargePositions.

const (
	ListLargePositionsParamsMinGradeA ListLargePositionsParamsMinGrade = "A"
	ListLargePositionsParamsMinGradeB ListLargePositionsParamsMinGrade = "B"
	ListLargePositionsParamsMinGradeC ListLargePositionsParamsMinGrade = "C"
	ListLargePositionsParamsMinGradeD ListLargePositionsParamsMinGrade = "D"
	ListLargePositionsParamsMinGradeF ListLargePositionsParamsMinGrade = "F"
	ListLargePositionsParamsMinGradeS ListLargePositionsParamsMinGrade = "S"
)

Defines values for ListLargePositionsParamsMinGrade.

func (ListLargePositionsParamsMinGrade) Valid

Valid indicates whether the value is a known member of the ListLargePositionsParamsMinGrade enum.

type ListLargePositionsParamsXQueryValidation added in v0.3.0

type ListLargePositionsParamsXQueryValidation string

ListLargePositionsParamsXQueryValidation defines parameters for ListLargePositions.

const (
	ListLargePositionsParamsXQueryValidationStrict ListLargePositionsParamsXQueryValidation = "strict"
)

Defines values for ListLargePositionsParamsXQueryValidation.

func (ListLargePositionsParamsXQueryValidation) Valid added in v0.3.0

Valid indicates whether the value is a known member of the ListLargePositionsParamsXQueryValidation enum.

type ListLargePositionsResponse

type ListLargePositionsResponse struct {
	Body         []byte
	HTTPResponse *http.Response
	// JSON200 the response for an HTTP 200 `application/json` response
	JSON200 *struct {
		Data    []LargePosition `json:"data"`
		HasMore bool            `json:"has_more"`
		Meta    ResponseMeta    `json:"meta"`

		// NextCursor Opaque cursor for the next page; absent on the last page.
		NextCursor *string                                     `json:"next_cursor,omitempty"`
		Object     ListLargePositions200JSONResponseBodyObject `json:"object"`

		// Total Total ranked rows when the read model exposes a count; may be absent.
		Total *int `json:"total,omitempty"`
	}
	// JSON400 the response for an HTTP 400 `application/json` response
	JSON400 *ApiError
	// JSON401 the response for an HTTP 401 `application/json` response
	JSON401 *ApiError
	// JSON402 the response for an HTTP 402 `application/json` response
	JSON402 *ApiError
	// JSON403 the response for an HTTP 403 `application/json` response
	JSON403 *ApiError
	// JSON408 the response for an HTTP 408 `application/json` response
	JSON408 *ApiError
	// JSON423 the response for an HTTP 423 `application/json` response
	JSON423 *ApiError
	// JSON429 the response for an HTTP 429 `application/json` response
	JSON429 *ApiError
	// JSON500 the response for an HTTP 500 `application/json` response
	JSON500 *ApiError
	// JSON503 the response for an HTTP 503 `application/json` response
	JSON503 *ApiError
	// Headers200 the parsed response headers for an HTTP 200 response
	Headers200 *ListLargePositionsResponse200Headers
	// Headers304 the parsed response headers for an HTTP 304 response
	Headers304 *ListLargePositionsResponse304Headers
	// Headers429 the parsed response headers for an HTTP 429 response
	Headers429 *ListLargePositionsResponse429Headers
	// Headers503 the parsed response headers for an HTTP 503 response
	Headers503 *ListLargePositionsResponse503Headers
}

func ParseListLargePositionsResponse

func ParseListLargePositionsResponse(rsp *http.Response) (*ListLargePositionsResponse, error)

ParseListLargePositionsResponse parses an HTTP response from a ListLargePositionsWithResponse call

func (ListLargePositionsResponse) ContentType

func (r ListLargePositionsResponse) ContentType() string

ContentType is a convenience method to retrieve the Content-Type value from the HTTP response headers

func (ListLargePositionsResponse) GetBody

func (r ListLargePositionsResponse) GetBody() []byte

GetBody returns the raw response body bytes

func (ListLargePositionsResponse) GetJSON200

func (r ListLargePositionsResponse) GetJSON200() *struct {
	Data    []LargePosition `json:"data"`
	HasMore bool            `json:"has_more"`
	Meta    ResponseMeta    `json:"meta"`

	// NextCursor Opaque cursor for the next page; absent on the last page.
	NextCursor *string                                     `json:"next_cursor,omitempty"`
	Object     ListLargePositions200JSONResponseBodyObject `json:"object"`

	// Total Total ranked rows when the read model exposes a count; may be absent.
	Total *int `json:"total,omitempty"`
}

GetJSON200 returns the response for an HTTP 200 `application/json` response

func (ListLargePositionsResponse) GetJSON400

func (r ListLargePositionsResponse) GetJSON400() *ApiError

GetJSON400 returns the response for an HTTP 400 `application/json` response

func (ListLargePositionsResponse) GetJSON401

func (r ListLargePositionsResponse) GetJSON401() *ApiError

GetJSON401 returns the response for an HTTP 401 `application/json` response

func (ListLargePositionsResponse) GetJSON402

func (r ListLargePositionsResponse) GetJSON402() *ApiError

GetJSON402 returns the response for an HTTP 402 `application/json` response

func (ListLargePositionsResponse) GetJSON403

func (r ListLargePositionsResponse) GetJSON403() *ApiError

GetJSON403 returns the response for an HTTP 403 `application/json` response

func (ListLargePositionsResponse) GetJSON408 added in v0.2.0

func (r ListLargePositionsResponse) GetJSON408() *ApiError

GetJSON408 returns the response for an HTTP 408 `application/json` response

func (ListLargePositionsResponse) GetJSON423

func (r ListLargePositionsResponse) GetJSON423() *ApiError

GetJSON423 returns the response for an HTTP 423 `application/json` response

func (ListLargePositionsResponse) GetJSON429

func (r ListLargePositionsResponse) GetJSON429() *ApiError

GetJSON429 returns the response for an HTTP 429 `application/json` response

func (ListLargePositionsResponse) GetJSON500 added in v0.4.0

func (r ListLargePositionsResponse) GetJSON500() *ApiError

GetJSON500 returns the response for an HTTP 500 `application/json` response

func (ListLargePositionsResponse) GetJSON503

func (r ListLargePositionsResponse) GetJSON503() *ApiError

GetJSON503 returns the response for an HTTP 503 `application/json` response

func (ListLargePositionsResponse) Status

Status returns HTTPResponse.Status

func (ListLargePositionsResponse) StatusCode

func (r ListLargePositionsResponse) StatusCode() int

StatusCode returns HTTPResponse.StatusCode

type ListLargePositionsResponse200Headers

type ListLargePositionsResponse200Headers struct {
	ETag                *string
	RateLimitLimit      *int
	RateLimitRemaining  *int
	RateLimitReset      *int
	ServerTiming        *string
	XEffectiveQuery     *string
	XQueryIgnored       *string
	XRateLimitLimit     *int
	XRateLimitRemaining *int
	XRateLimitReset     *int
	XRequestId          *string
	XUsageAccounting    *string
}

ListLargePositionsResponse200Headers the declared response headers of an HTTP 200 response for ListLargePositions

type ListLargePositionsResponse304Headers

type ListLargePositionsResponse304Headers struct {
	ETag                *string
	RateLimitLimit      *int
	RateLimitRemaining  *int
	RateLimitReset      *int
	ServerTiming        *string
	XEffectiveQuery     *string
	XQueryIgnored       *string
	XRateLimitLimit     *int
	XRateLimitRemaining *int
	XRateLimitReset     *int
	XRequestId          *string
	XUsageAccounting    *string
}

ListLargePositionsResponse304Headers the declared response headers of an HTTP 304 response for ListLargePositions

type ListLargePositionsResponse429Headers

type ListLargePositionsResponse429Headers struct {
	RateLimitLimit      *int
	RateLimitRemaining  *int
	RateLimitReset      *int
	RetryAfter          *int
	XRateLimitLimit     *int
	XRateLimitRemaining *int
	XRateLimitReset     *int
	XRequestId          *string
}

ListLargePositionsResponse429Headers the declared response headers of an HTTP 429 response for ListLargePositions

type ListLargePositionsResponse503Headers

type ListLargePositionsResponse503Headers struct {
	RetryAfter *int
	XRequestId *string
}

ListLargePositionsResponse503Headers the declared response headers of an HTTP 503 response for ListLargePositions

type ListLargeTradeCounterpartyExecutions200JSONResponseBodyObject added in v0.4.0

type ListLargeTradeCounterpartyExecutions200JSONResponseBodyObject string

ListLargeTradeCounterpartyExecutions200JSONResponseBodyObject defines parameters for ListLargeTradeCounterpartyExecutions.

const (
	ListLargeTradeCounterpartyExecutions200JSONResponseBodyObjectCounterpartyAnalysis ListLargeTradeCounterpartyExecutions200JSONResponseBodyObject = "counterparty_analysis"
)

Defines values for ListLargeTradeCounterpartyExecutions200JSONResponseBodyObject.

func (ListLargeTradeCounterpartyExecutions200JSONResponseBodyObject) Valid added in v0.4.0

Valid indicates whether the value is a known member of the ListLargeTradeCounterpartyExecutions200JSONResponseBodyObject enum.

type ListLargeTradeCounterpartyExecutionsParams added in v0.4.0

type ListLargeTradeCounterpartyExecutionsParams struct {
	// SnapshotId Counterparty snapshot ID from the large trade detail response.
	SnapshotId string `form:"snapshot_id" json:"snapshot_id"`

	// Cursor Opaque cursor from the previous response's next_cursor.
	Cursor *string `form:"cursor,omitempty" json:"cursor,omitempty"`

	// Limit Maximum number of counterparty execution rows to return. Out-of-range values are clamped to 1..100.
	Limit *int `form:"limit,omitempty" json:"limit,omitempty"`

	// XQueryValidation Opt into strict query-name validation. The default is compatible: unknown names are ignored and reported in X-Query-Ignored. With strict, an unknown name returns 400 bad_request with error.reason unknown_query_parameter before the handler runs, including when its percent escape is incomplete.
	XQueryValidation *ListLargeTradeCounterpartyExecutionsParamsXQueryValidation `json:"X-Query-Validation,omitempty"`
}

ListLargeTradeCounterpartyExecutionsParams defines parameters for ListLargeTradeCounterpartyExecutions.

type ListLargeTradeCounterpartyExecutionsParamsXQueryValidation added in v0.4.0

type ListLargeTradeCounterpartyExecutionsParamsXQueryValidation string

ListLargeTradeCounterpartyExecutionsParamsXQueryValidation defines parameters for ListLargeTradeCounterpartyExecutions.

const (
	ListLargeTradeCounterpartyExecutionsParamsXQueryValidationStrict ListLargeTradeCounterpartyExecutionsParamsXQueryValidation = "strict"
)

Defines values for ListLargeTradeCounterpartyExecutionsParamsXQueryValidation.

func (ListLargeTradeCounterpartyExecutionsParamsXQueryValidation) Valid added in v0.4.0

Valid indicates whether the value is a known member of the ListLargeTradeCounterpartyExecutionsParamsXQueryValidation enum.

type ListLargeTradeCounterpartyExecutionsResponse added in v0.4.0

type ListLargeTradeCounterpartyExecutionsResponse struct {
	Body         []byte
	HTTPResponse *http.Response
	// JSON200 the response for an HTTP 200 `application/json` response
	JSON200 *struct {
		Data   CounterpartyAnalysis                                          `json:"data"`
		Meta   ResponseMeta                                                  `json:"meta"`
		Object ListLargeTradeCounterpartyExecutions200JSONResponseBodyObject `json:"object"`
	}
	// JSON400 the response for an HTTP 400 `application/json` response
	JSON400 *ApiError
	// JSON401 the response for an HTTP 401 `application/json` response
	JSON401 *ApiError
	// JSON402 the response for an HTTP 402 `application/json` response
	JSON402 *ApiError
	// JSON403 the response for an HTTP 403 `application/json` response
	JSON403 *ApiError
	// JSON404 the response for an HTTP 404 `application/json` response
	JSON404 *ApiError
	// JSON429 the response for an HTTP 429 `application/json` response
	JSON429 *ApiError
	// JSON500 the response for an HTTP 500 `application/json` response
	JSON500 *ApiError
	// JSON503 the response for an HTTP 503 `application/json` response
	JSON503 *ApiError
	// Headers200 the parsed response headers for an HTTP 200 response
	Headers200 *ListLargeTradeCounterpartyExecutionsResponse200Headers
	// Headers304 the parsed response headers for an HTTP 304 response
	Headers304 *ListLargeTradeCounterpartyExecutionsResponse304Headers
	// Headers429 the parsed response headers for an HTTP 429 response
	Headers429 *ListLargeTradeCounterpartyExecutionsResponse429Headers
	// Headers503 the parsed response headers for an HTTP 503 response
	Headers503 *ListLargeTradeCounterpartyExecutionsResponse503Headers
}

func ParseListLargeTradeCounterpartyExecutionsResponse added in v0.4.0

func ParseListLargeTradeCounterpartyExecutionsResponse(rsp *http.Response) (*ListLargeTradeCounterpartyExecutionsResponse, error)

ParseListLargeTradeCounterpartyExecutionsResponse parses an HTTP response from a ListLargeTradeCounterpartyExecutionsWithResponse call

func (ListLargeTradeCounterpartyExecutionsResponse) ContentType added in v0.4.0

ContentType is a convenience method to retrieve the Content-Type value from the HTTP response headers

func (ListLargeTradeCounterpartyExecutionsResponse) GetBody added in v0.4.0

GetBody returns the raw response body bytes

func (ListLargeTradeCounterpartyExecutionsResponse) GetJSON200 added in v0.4.0

func (r ListLargeTradeCounterpartyExecutionsResponse) GetJSON200() *struct {
	Data   CounterpartyAnalysis                                          `json:"data"`
	Meta   ResponseMeta                                                  `json:"meta"`
	Object ListLargeTradeCounterpartyExecutions200JSONResponseBodyObject `json:"object"`
}

GetJSON200 returns the response for an HTTP 200 `application/json` response

func (ListLargeTradeCounterpartyExecutionsResponse) GetJSON400 added in v0.4.0

GetJSON400 returns the response for an HTTP 400 `application/json` response

func (ListLargeTradeCounterpartyExecutionsResponse) GetJSON401 added in v0.4.0

GetJSON401 returns the response for an HTTP 401 `application/json` response

func (ListLargeTradeCounterpartyExecutionsResponse) GetJSON402 added in v0.4.0

GetJSON402 returns the response for an HTTP 402 `application/json` response

func (ListLargeTradeCounterpartyExecutionsResponse) GetJSON403 added in v0.4.0

GetJSON403 returns the response for an HTTP 403 `application/json` response

func (ListLargeTradeCounterpartyExecutionsResponse) GetJSON404 added in v0.4.0

GetJSON404 returns the response for an HTTP 404 `application/json` response

func (ListLargeTradeCounterpartyExecutionsResponse) GetJSON429 added in v0.4.0

GetJSON429 returns the response for an HTTP 429 `application/json` response

func (ListLargeTradeCounterpartyExecutionsResponse) GetJSON500 added in v0.4.0

GetJSON500 returns the response for an HTTP 500 `application/json` response

func (ListLargeTradeCounterpartyExecutionsResponse) GetJSON503 added in v0.4.0

GetJSON503 returns the response for an HTTP 503 `application/json` response

func (ListLargeTradeCounterpartyExecutionsResponse) Status added in v0.4.0

Status returns HTTPResponse.Status

func (ListLargeTradeCounterpartyExecutionsResponse) StatusCode added in v0.4.0

StatusCode returns HTTPResponse.StatusCode

type ListLargeTradeCounterpartyExecutionsResponse200Headers added in v0.4.0

type ListLargeTradeCounterpartyExecutionsResponse200Headers struct {
	ETag                *string
	RateLimitLimit      *int
	RateLimitRemaining  *int
	RateLimitReset      *int
	ServerTiming        *string
	XEffectiveQuery     *string
	XQueryIgnored       *string
	XRateLimitLimit     *int
	XRateLimitRemaining *int
	XRateLimitReset     *int
	XRequestId          *string
	XUsageAccounting    *string
}

ListLargeTradeCounterpartyExecutionsResponse200Headers the declared response headers of an HTTP 200 response for ListLargeTradeCounterpartyExecutions

type ListLargeTradeCounterpartyExecutionsResponse304Headers added in v0.4.0

type ListLargeTradeCounterpartyExecutionsResponse304Headers struct {
	ETag                *string
	RateLimitLimit      *int
	RateLimitRemaining  *int
	RateLimitReset      *int
	ServerTiming        *string
	XEffectiveQuery     *string
	XQueryIgnored       *string
	XRateLimitLimit     *int
	XRateLimitRemaining *int
	XRateLimitReset     *int
	XRequestId          *string
	XUsageAccounting    *string
}

ListLargeTradeCounterpartyExecutionsResponse304Headers the declared response headers of an HTTP 304 response for ListLargeTradeCounterpartyExecutions

type ListLargeTradeCounterpartyExecutionsResponse429Headers added in v0.4.0

type ListLargeTradeCounterpartyExecutionsResponse429Headers struct {
	RateLimitLimit      *int
	RateLimitRemaining  *int
	RateLimitReset      *int
	RetryAfter          *int
	XRateLimitLimit     *int
	XRateLimitRemaining *int
	XRateLimitReset     *int
	XRequestId          *string
}

ListLargeTradeCounterpartyExecutionsResponse429Headers the declared response headers of an HTTP 429 response for ListLargeTradeCounterpartyExecutions

type ListLargeTradeCounterpartyExecutionsResponse503Headers added in v0.4.0

type ListLargeTradeCounterpartyExecutionsResponse503Headers struct {
	RetryAfter *int
	XRequestId *string
}

ListLargeTradeCounterpartyExecutionsResponse503Headers the declared response headers of an HTTP 503 response for ListLargeTradeCounterpartyExecutions

type ListLargeTradeCounterpartyMakers200JSONResponseBodyObject added in v0.4.0

type ListLargeTradeCounterpartyMakers200JSONResponseBodyObject string

ListLargeTradeCounterpartyMakers200JSONResponseBodyObject defines parameters for ListLargeTradeCounterpartyMakers.

const (
	ListLargeTradeCounterpartyMakers200JSONResponseBodyObjectCounterpartyMakerPage ListLargeTradeCounterpartyMakers200JSONResponseBodyObject = "counterparty_maker_page"
)

Defines values for ListLargeTradeCounterpartyMakers200JSONResponseBodyObject.

func (ListLargeTradeCounterpartyMakers200JSONResponseBodyObject) Valid added in v0.4.0

Valid indicates whether the value is a known member of the ListLargeTradeCounterpartyMakers200JSONResponseBodyObject enum.

type ListLargeTradeCounterpartyMakersParams added in v0.4.0

type ListLargeTradeCounterpartyMakersParams struct {
	// SnapshotId Counterparty snapshot ID from the large trade detail response.
	SnapshotId string `form:"snapshot_id" json:"snapshot_id"`

	// Cursor Opaque cursor from the previous response's next_cursor.
	Cursor *string `form:"cursor,omitempty" json:"cursor,omitempty"`

	// Limit Maximum number of maker rows to return. Out-of-range values are clamped to 1..100.
	Limit *int `form:"limit,omitempty" json:"limit,omitempty"`
}

ListLargeTradeCounterpartyMakersParams defines parameters for ListLargeTradeCounterpartyMakers.

type ListLargeTradeCounterpartyMakersResponse added in v0.4.0

type ListLargeTradeCounterpartyMakersResponse struct {
	Body         []byte
	HTTPResponse *http.Response
	// JSON200 the response for an HTTP 200 `application/json` response
	JSON200 *struct {
		Data   CounterpartyMakerPage                                     `json:"data"`
		Meta   ResponseMeta                                              `json:"meta"`
		Object ListLargeTradeCounterpartyMakers200JSONResponseBodyObject `json:"object"`
	}
	// JSON400 the response for an HTTP 400 `application/json` response
	JSON400 *ApiError
	// JSON401 the response for an HTTP 401 `application/json` response
	JSON401 *ApiError
	// JSON402 the response for an HTTP 402 `application/json` response
	JSON402 *ApiError
	// JSON403 the response for an HTTP 403 `application/json` response
	JSON403 *ApiError
	// JSON404 the response for an HTTP 404 `application/json` response
	JSON404 *ApiError
	// JSON429 the response for an HTTP 429 `application/json` response
	JSON429 *ApiError
	// JSON500 the response for an HTTP 500 `application/json` response
	JSON500 *ApiError
	// JSON503 the response for an HTTP 503 `application/json` response
	JSON503 *ApiError
	// Headers200 the parsed response headers for an HTTP 200 response
	Headers200 *ListLargeTradeCounterpartyMakersResponse200Headers
	// Headers304 the parsed response headers for an HTTP 304 response
	Headers304 *ListLargeTradeCounterpartyMakersResponse304Headers
	// Headers429 the parsed response headers for an HTTP 429 response
	Headers429 *ListLargeTradeCounterpartyMakersResponse429Headers
	// Headers503 the parsed response headers for an HTTP 503 response
	Headers503 *ListLargeTradeCounterpartyMakersResponse503Headers
}

func ParseListLargeTradeCounterpartyMakersResponse added in v0.4.0

func ParseListLargeTradeCounterpartyMakersResponse(rsp *http.Response) (*ListLargeTradeCounterpartyMakersResponse, error)

ParseListLargeTradeCounterpartyMakersResponse parses an HTTP response from a ListLargeTradeCounterpartyMakersWithResponse call

func (ListLargeTradeCounterpartyMakersResponse) ContentType added in v0.4.0

ContentType is a convenience method to retrieve the Content-Type value from the HTTP response headers

func (ListLargeTradeCounterpartyMakersResponse) GetBody added in v0.4.0

GetBody returns the raw response body bytes

func (ListLargeTradeCounterpartyMakersResponse) GetJSON200 added in v0.4.0

func (r ListLargeTradeCounterpartyMakersResponse) GetJSON200() *struct {
	Data   CounterpartyMakerPage                                     `json:"data"`
	Meta   ResponseMeta                                              `json:"meta"`
	Object ListLargeTradeCounterpartyMakers200JSONResponseBodyObject `json:"object"`
}

GetJSON200 returns the response for an HTTP 200 `application/json` response

func (ListLargeTradeCounterpartyMakersResponse) GetJSON400 added in v0.4.0

GetJSON400 returns the response for an HTTP 400 `application/json` response

func (ListLargeTradeCounterpartyMakersResponse) GetJSON401 added in v0.4.0

GetJSON401 returns the response for an HTTP 401 `application/json` response

func (ListLargeTradeCounterpartyMakersResponse) GetJSON402 added in v0.4.0

GetJSON402 returns the response for an HTTP 402 `application/json` response

func (ListLargeTradeCounterpartyMakersResponse) GetJSON403 added in v0.4.0

GetJSON403 returns the response for an HTTP 403 `application/json` response

func (ListLargeTradeCounterpartyMakersResponse) GetJSON404 added in v0.4.0

GetJSON404 returns the response for an HTTP 404 `application/json` response

func (ListLargeTradeCounterpartyMakersResponse) GetJSON429 added in v0.4.0

GetJSON429 returns the response for an HTTP 429 `application/json` response

func (ListLargeTradeCounterpartyMakersResponse) GetJSON500 added in v0.4.0

GetJSON500 returns the response for an HTTP 500 `application/json` response

func (ListLargeTradeCounterpartyMakersResponse) GetJSON503 added in v0.4.0

GetJSON503 returns the response for an HTTP 503 `application/json` response

func (ListLargeTradeCounterpartyMakersResponse) Status added in v0.4.0

Status returns HTTPResponse.Status

func (ListLargeTradeCounterpartyMakersResponse) StatusCode added in v0.4.0

StatusCode returns HTTPResponse.StatusCode

type ListLargeTradeCounterpartyMakersResponse200Headers added in v0.4.0

type ListLargeTradeCounterpartyMakersResponse200Headers struct {
	ETag                *string
	RateLimitLimit      *int
	RateLimitRemaining  *int
	RateLimitReset      *int
	ServerTiming        *string
	XEffectiveQuery     *string
	XQueryIgnored       *string
	XRateLimitLimit     *int
	XRateLimitRemaining *int
	XRateLimitReset     *int
	XRequestId          *string
	XUsageAccounting    *string
}

ListLargeTradeCounterpartyMakersResponse200Headers the declared response headers of an HTTP 200 response for ListLargeTradeCounterpartyMakers

type ListLargeTradeCounterpartyMakersResponse304Headers added in v0.4.0

type ListLargeTradeCounterpartyMakersResponse304Headers struct {
	ETag                *string
	RateLimitLimit      *int
	RateLimitRemaining  *int
	RateLimitReset      *int
	ServerTiming        *string
	XEffectiveQuery     *string
	XQueryIgnored       *string
	XRateLimitLimit     *int
	XRateLimitRemaining *int
	XRateLimitReset     *int
	XRequestId          *string
	XUsageAccounting    *string
}

ListLargeTradeCounterpartyMakersResponse304Headers the declared response headers of an HTTP 304 response for ListLargeTradeCounterpartyMakers

type ListLargeTradeCounterpartyMakersResponse429Headers added in v0.4.0

type ListLargeTradeCounterpartyMakersResponse429Headers struct {
	RateLimitLimit      *int
	RateLimitRemaining  *int
	RateLimitReset      *int
	RetryAfter          *int
	XRateLimitLimit     *int
	XRateLimitRemaining *int
	XRateLimitReset     *int
	XRequestId          *string
}

ListLargeTradeCounterpartyMakersResponse429Headers the declared response headers of an HTTP 429 response for ListLargeTradeCounterpartyMakers

type ListLargeTradeCounterpartyMakersResponse503Headers added in v0.4.0

type ListLargeTradeCounterpartyMakersResponse503Headers struct {
	RetryAfter *int
	XRequestId *string
}

ListLargeTradeCounterpartyMakersResponse503Headers the declared response headers of an HTTP 503 response for ListLargeTradeCounterpartyMakers

type ListLargeTradeHistory200JSONResponseBodyObject added in v0.4.0

type ListLargeTradeHistory200JSONResponseBodyObject string

ListLargeTradeHistory200JSONResponseBodyObject defines parameters for ListLargeTradeHistory.

const (
	ListLargeTradeHistory200JSONResponseBodyObjectList ListLargeTradeHistory200JSONResponseBodyObject = "list"
)

Defines values for ListLargeTradeHistory200JSONResponseBodyObject.

func (ListLargeTradeHistory200JSONResponseBodyObject) Valid added in v0.4.0

Valid indicates whether the value is a known member of the ListLargeTradeHistory200JSONResponseBodyObject enum.

type ListLargeTradeHistoryParams added in v0.4.0

type ListLargeTradeHistoryParams struct {
	// Limit Maximum number of historical large trades to return. Out-of-range values are clamped to 1..100.
	Limit *int `form:"limit,omitempty" json:"limit,omitempty"`

	// Cursor Pagination cursor from previous response's next_cursor. Prefix: wth_. URL-encode when replaying as a query parameter.
	Cursor *string `form:"cursor,omitempty" json:"cursor,omitempty"`

	// MinSize Minimum trade size in USD. The capture floor was 3,000 USD before 2026-07-06 and 10,000 USD from then (1,000 USD in earnings markets), so 10000 gives one size rule across the whole archive. From 2026-09-23 a fill must also be at least 0.1% of its market's recorded traded volume (Polymarket's own share count); rows written before that date were not re-filtered.
	MinSize *float32 `form:"min_size,omitempty" json:"min_size,omitempty"`

	// ConditionId Exact raw provider condition_id. Unknown markets return an empty list.
	ConditionId *string `form:"condition_id,omitempty" json:"condition_id,omitempty"`

	// Trader Trader wallet address, timestamp-suffixed wallet alias, username, or trd_-prefixed trader ID, resolved against the traders table. Unknown traders return an empty list.
	Trader *string `form:"trader,omitempty" json:"trader,omitempty"`

	// Category Filter by market category (case-insensitive). A canonical bucket name (e.g. Basketball) matches every provider member that folds into it (NBA, WNBA, NCAAB); a raw provider value also resolves to its bucket.
	Category *string `form:"category,omitempty" json:"category,omitempty"`

	// MinGrade Minimum trader grade as of today (trader.grade), not at trade time. On a historical window it selects wallets by a grade they may have earned after the trade; for a point-in-time rule filter on trader.grade_at_trade instead. A means S or A, B means S, A or B.
	MinGrade *ListLargeTradeHistoryParamsMinGrade `form:"min_grade,omitempty" json:"min_grade,omitempty"`

	// SuspiciousOnly When true, return only rows with persisted suspicion_score >= 60. The filter is applied before SQL-backed limit + 1 pagination.
	SuspiciousOnly *bool `form:"suspicious_only,omitempty" json:"suspicious_only,omitempty"`

	// Platform Filter by whale_alerts.platform. all is equivalent to omitted.
	Platform *ListLargeTradeHistoryParamsPlatform `form:"platform,omitempty" json:"platform,omitempty"`

	// From Inclusive RFC3339 lower bound on whale_alerts.traded_at.
	From *time.Time `form:"from,omitempty" json:"from,omitempty"`

	// To Exclusive RFC3339 upper bound on whale_alerts.traded_at. Must be after from when both are present.
	To *time.Time `form:"to,omitempty" json:"to,omitempty"`

	// MinMarketVolumeShare Keep only trades whose market_volume_share is known and at least this. A fraction, not a percent: 0.01 is one percent of the market's traded volume. A trade whose share is unavailable is never returned by a non-zero value, because an unavailable share cannot be said to clear a floor.
	MinMarketVolumeShare *float32 `form:"min_market_volume_share,omitempty" json:"min_market_volume_share,omitempty"`

	// Sort Order of the returned page. recent is newest first and is the default. market_volume_share ranks by each trade's share of its market's traded volume, biggest first, with a trade whose share is unavailable last. That ranking reads from, or the last 30 days when from is omitted, for the same reason. A cursor is bound to the order it was minted in, so a continuation cannot cross from one order into the other.
	Sort *ListLargeTradeHistoryParamsSort `form:"sort,omitempty" json:"sort,omitempty"`

	// XQueryValidation Opt into strict query-name validation. The default is compatible: unknown names are ignored and reported in X-Query-Ignored. With strict, an unknown name returns 400 bad_request with error.reason unknown_query_parameter before the handler runs, including when its percent escape is incomplete.
	XQueryValidation *ListLargeTradeHistoryParamsXQueryValidation `json:"X-Query-Validation,omitempty"`

	// IfNoneMatch Conditional GET validator from a previous ETag. Matching values return 304 Not Modified with an empty body.
	IfNoneMatch *string `json:"If-None-Match,omitempty"`
}

ListLargeTradeHistoryParams defines parameters for ListLargeTradeHistory.

type ListLargeTradeHistoryParamsMinGrade added in v0.4.0

type ListLargeTradeHistoryParamsMinGrade string

ListLargeTradeHistoryParamsMinGrade defines parameters for ListLargeTradeHistory.

const (
	ListLargeTradeHistoryParamsMinGradeA ListLargeTradeHistoryParamsMinGrade = "A"
	ListLargeTradeHistoryParamsMinGradeB ListLargeTradeHistoryParamsMinGrade = "B"
	ListLargeTradeHistoryParamsMinGradeC ListLargeTradeHistoryParamsMinGrade = "C"
	ListLargeTradeHistoryParamsMinGradeD ListLargeTradeHistoryParamsMinGrade = "D"
	ListLargeTradeHistoryParamsMinGradeF ListLargeTradeHistoryParamsMinGrade = "F"
	ListLargeTradeHistoryParamsMinGradeS ListLargeTradeHistoryParamsMinGrade = "S"
)

Defines values for ListLargeTradeHistoryParamsMinGrade.

func (ListLargeTradeHistoryParamsMinGrade) Valid added in v0.4.0

Valid indicates whether the value is a known member of the ListLargeTradeHistoryParamsMinGrade enum.

type ListLargeTradeHistoryParamsPlatform added in v0.4.0

type ListLargeTradeHistoryParamsPlatform string

ListLargeTradeHistoryParamsPlatform defines parameters for ListLargeTradeHistory.

const (
	ListLargeTradeHistoryParamsPlatformAll        ListLargeTradeHistoryParamsPlatform = "all"
	ListLargeTradeHistoryParamsPlatformPolymarket ListLargeTradeHistoryParamsPlatform = "polymarket"
)

Defines values for ListLargeTradeHistoryParamsPlatform.

func (ListLargeTradeHistoryParamsPlatform) Valid added in v0.4.0

Valid indicates whether the value is a known member of the ListLargeTradeHistoryParamsPlatform enum.

type ListLargeTradeHistoryParamsSort added in v0.4.0

type ListLargeTradeHistoryParamsSort string

ListLargeTradeHistoryParamsSort defines parameters for ListLargeTradeHistory.

const (
	ListLargeTradeHistoryParamsSortMarketVolumeShare ListLargeTradeHistoryParamsSort = "market_volume_share"
	ListLargeTradeHistoryParamsSortRecent            ListLargeTradeHistoryParamsSort = "recent"
)

Defines values for ListLargeTradeHistoryParamsSort.

func (ListLargeTradeHistoryParamsSort) Valid added in v0.4.0

Valid indicates whether the value is a known member of the ListLargeTradeHistoryParamsSort enum.

type ListLargeTradeHistoryParamsXQueryValidation added in v0.4.0

type ListLargeTradeHistoryParamsXQueryValidation string

ListLargeTradeHistoryParamsXQueryValidation defines parameters for ListLargeTradeHistory.

const (
	ListLargeTradeHistoryParamsXQueryValidationStrict ListLargeTradeHistoryParamsXQueryValidation = "strict"
)

Defines values for ListLargeTradeHistoryParamsXQueryValidation.

func (ListLargeTradeHistoryParamsXQueryValidation) Valid added in v0.4.0

Valid indicates whether the value is a known member of the ListLargeTradeHistoryParamsXQueryValidation enum.

type ListLargeTradeHistoryResponse added in v0.4.0

type ListLargeTradeHistoryResponse struct {
	Body         []byte
	HTTPResponse *http.Response
	// JSON200 the response for an HTTP 200 `application/json` response
	JSON200 *struct {
		Data []LargeTrade `json:"data"`

		// DataQuality Writer-backed age and coverage for this page; it is part of the representation and the ETag, while transport cache facts remain in meta.
		DataQuality DataQuality                                    `json:"data_quality"`
		HasMore     bool                                           `json:"has_more"`
		Meta        LargeTradeHistoryMeta                          `json:"meta"`
		NextCursor  *string                                        `json:"next_cursor,omitempty"`
		Object      ListLargeTradeHistory200JSONResponseBodyObject `json:"object"`

		// Total Total matching rows when the read model exposes a count; the key is absent when it does not.
		Total *int `json:"total,omitempty"`
	}
	// JSON400 the response for an HTTP 400 `application/json` response
	JSON400 *ApiError
	// JSON401 the response for an HTTP 401 `application/json` response
	JSON401 *ApiError
	// JSON402 the response for an HTTP 402 `application/json` response
	JSON402 *ApiError
	// JSON403 the response for an HTTP 403 `application/json` response
	JSON403 *ApiError
	// JSON408 the response for an HTTP 408 `application/json` response
	JSON408 *ApiError
	// JSON423 the response for an HTTP 423 `application/json` response
	JSON423 *ApiError
	// JSON429 the response for an HTTP 429 `application/json` response
	JSON429 *ApiError
	// JSON500 the response for an HTTP 500 `application/json` response
	JSON500 *ApiError
	// JSON503 the response for an HTTP 503 `application/json` response
	JSON503 *ApiError
	// Headers200 the parsed response headers for an HTTP 200 response
	Headers200 *ListLargeTradeHistoryResponse200Headers
	// Headers304 the parsed response headers for an HTTP 304 response
	Headers304 *ListLargeTradeHistoryResponse304Headers
	// Headers429 the parsed response headers for an HTTP 429 response
	Headers429 *ListLargeTradeHistoryResponse429Headers
	// Headers503 the parsed response headers for an HTTP 503 response
	Headers503 *ListLargeTradeHistoryResponse503Headers
}

func ParseListLargeTradeHistoryResponse added in v0.4.0

func ParseListLargeTradeHistoryResponse(rsp *http.Response) (*ListLargeTradeHistoryResponse, error)

ParseListLargeTradeHistoryResponse parses an HTTP response from a ListLargeTradeHistoryWithResponse call

func (ListLargeTradeHistoryResponse) ContentType added in v0.4.0

func (r ListLargeTradeHistoryResponse) ContentType() string

ContentType is a convenience method to retrieve the Content-Type value from the HTTP response headers

func (ListLargeTradeHistoryResponse) GetBody added in v0.4.0

func (r ListLargeTradeHistoryResponse) GetBody() []byte

GetBody returns the raw response body bytes

func (ListLargeTradeHistoryResponse) GetJSON200 added in v0.4.0

func (r ListLargeTradeHistoryResponse) GetJSON200() *struct {
	Data []LargeTrade `json:"data"`

	// DataQuality Writer-backed age and coverage for this page; it is part of the representation and the ETag, while transport cache facts remain in meta.
	DataQuality DataQuality                                    `json:"data_quality"`
	HasMore     bool                                           `json:"has_more"`
	Meta        LargeTradeHistoryMeta                          `json:"meta"`
	NextCursor  *string                                        `json:"next_cursor,omitempty"`
	Object      ListLargeTradeHistory200JSONResponseBodyObject `json:"object"`

	// Total Total matching rows when the read model exposes a count; the key is absent when it does not.
	Total *int `json:"total,omitempty"`
}

GetJSON200 returns the response for an HTTP 200 `application/json` response

func (ListLargeTradeHistoryResponse) GetJSON400 added in v0.4.0

func (r ListLargeTradeHistoryResponse) GetJSON400() *ApiError

GetJSON400 returns the response for an HTTP 400 `application/json` response

func (ListLargeTradeHistoryResponse) GetJSON401 added in v0.4.0

func (r ListLargeTradeHistoryResponse) GetJSON401() *ApiError

GetJSON401 returns the response for an HTTP 401 `application/json` response

func (ListLargeTradeHistoryResponse) GetJSON402 added in v0.4.0

func (r ListLargeTradeHistoryResponse) GetJSON402() *ApiError

GetJSON402 returns the response for an HTTP 402 `application/json` response

func (ListLargeTradeHistoryResponse) GetJSON403 added in v0.4.0

func (r ListLargeTradeHistoryResponse) GetJSON403() *ApiError

GetJSON403 returns the response for an HTTP 403 `application/json` response

func (ListLargeTradeHistoryResponse) GetJSON408 added in v0.4.0

func (r ListLargeTradeHistoryResponse) GetJSON408() *ApiError

GetJSON408 returns the response for an HTTP 408 `application/json` response

func (ListLargeTradeHistoryResponse) GetJSON423 added in v0.4.0

func (r ListLargeTradeHistoryResponse) GetJSON423() *ApiError

GetJSON423 returns the response for an HTTP 423 `application/json` response

func (ListLargeTradeHistoryResponse) GetJSON429 added in v0.4.0

func (r ListLargeTradeHistoryResponse) GetJSON429() *ApiError

GetJSON429 returns the response for an HTTP 429 `application/json` response

func (ListLargeTradeHistoryResponse) GetJSON500 added in v0.4.0

func (r ListLargeTradeHistoryResponse) GetJSON500() *ApiError

GetJSON500 returns the response for an HTTP 500 `application/json` response

func (ListLargeTradeHistoryResponse) GetJSON503 added in v0.4.0

func (r ListLargeTradeHistoryResponse) GetJSON503() *ApiError

GetJSON503 returns the response for an HTTP 503 `application/json` response

func (ListLargeTradeHistoryResponse) Status added in v0.4.0

Status returns HTTPResponse.Status

func (ListLargeTradeHistoryResponse) StatusCode added in v0.4.0

func (r ListLargeTradeHistoryResponse) StatusCode() int

StatusCode returns HTTPResponse.StatusCode

type ListLargeTradeHistoryResponse200Headers added in v0.4.0

type ListLargeTradeHistoryResponse200Headers struct {
	ETag                *string
	RateLimitLimit      *int
	RateLimitRemaining  *int
	RateLimitReset      *int
	ServerTiming        *string
	XEffectiveQuery     *string
	XQueryIgnored       *string
	XRateLimitLimit     *int
	XRateLimitRemaining *int
	XRateLimitReset     *int
	XRequestId          *string
	XUsageAccounting    *string
}

ListLargeTradeHistoryResponse200Headers the declared response headers of an HTTP 200 response for ListLargeTradeHistory

type ListLargeTradeHistoryResponse304Headers added in v0.4.0

type ListLargeTradeHistoryResponse304Headers struct {
	ETag                *string
	RateLimitLimit      *int
	RateLimitRemaining  *int
	RateLimitReset      *int
	ServerTiming        *string
	XEffectiveQuery     *string
	XQueryIgnored       *string
	XRateLimitLimit     *int
	XRateLimitRemaining *int
	XRateLimitReset     *int
	XRequestId          *string
	XUsageAccounting    *string
}

ListLargeTradeHistoryResponse304Headers the declared response headers of an HTTP 304 response for ListLargeTradeHistory

type ListLargeTradeHistoryResponse429Headers added in v0.4.0

type ListLargeTradeHistoryResponse429Headers struct {
	RateLimitLimit      *int
	RateLimitRemaining  *int
	RateLimitReset      *int
	RetryAfter          *int
	XRateLimitLimit     *int
	XRateLimitRemaining *int
	XRateLimitReset     *int
	XRequestId          *string
}

ListLargeTradeHistoryResponse429Headers the declared response headers of an HTTP 429 response for ListLargeTradeHistory

type ListLargeTradeHistoryResponse503Headers added in v0.4.0

type ListLargeTradeHistoryResponse503Headers struct {
	RetryAfter *int
	XRequestId *string
}

ListLargeTradeHistoryResponse503Headers the declared response headers of an HTTP 503 response for ListLargeTradeHistory

type ListLargeTrades200JSONResponseBodyObject added in v0.4.0

type ListLargeTrades200JSONResponseBodyObject string

ListLargeTrades200JSONResponseBodyObject defines parameters for ListLargeTrades.

const (
	ListLargeTrades200JSONResponseBodyObjectList ListLargeTrades200JSONResponseBodyObject = "list"
)

Defines values for ListLargeTrades200JSONResponseBodyObject.

func (ListLargeTrades200JSONResponseBodyObject) Valid added in v0.4.0

Valid indicates whether the value is a known member of the ListLargeTrades200JSONResponseBodyObject enum.

type ListLargeTradesParams added in v0.4.0

type ListLargeTradesParams struct {
	// Limit Maximum number of recent large trades to return. Out-of-range values are clamped to 1..100.
	Limit *int `form:"limit,omitempty" json:"limit,omitempty"`

	// Cursor Pagination cursor from previous response's next_cursor.
	Cursor *string `form:"cursor,omitempty" json:"cursor,omitempty"`

	// MinSize Minimum trade size in USD.
	MinSize *float32 `form:"min_size,omitempty" json:"min_size,omitempty"`

	// Category Filter by market category (case-insensitive). A canonical bucket name (e.g. Basketball) matches every provider member that folds into it (NBA, WNBA, NCAAB); a raw provider value also resolves to its bucket.
	Category *string `form:"category,omitempty" json:"category,omitempty"`

	// MinGrade Minimum trader grade.
	MinGrade *ListLargeTradesParamsMinGrade `form:"min_grade,omitempty" json:"min_grade,omitempty"`

	// SuspiciousOnly When true, return only rows with persisted suspicion_score >= 60. The filter is applied before SQL-backed limit + 1 pagination.
	SuspiciousOnly *bool `form:"suspicious_only,omitempty" json:"suspicious_only,omitempty"`

	// MinMarketVolumeShare Keep only trades whose market_volume_share is known and at least this. A fraction, not a percent: 0.01 is one percent of the market's traded volume. A trade whose share is unavailable is never returned by a non-zero value, because an unavailable share cannot be said to clear a floor.
	MinMarketVolumeShare *float32 `form:"min_market_volume_share,omitempty" json:"min_market_volume_share,omitempty"`

	// Sort Order of the returned page. recent is newest first and is the default. market_volume_share ranks by each trade's share of its market's traded volume, biggest first, with a trade whose share is unavailable last. That ranking reads the last 30 days, because the share is computed for each request and an unbounded ranking cannot be served inside the documented latency budget. A cursor is bound to the order it was minted in, so a continuation cannot cross from one order into the other.
	Sort *ListLargeTradesParamsSort `form:"sort,omitempty" json:"sort,omitempty"`

	// Since Return only the trades recorded after this one. Pass the id of a large trade this API returned (wt_<n>, or the bare integer). The answer keeps the list shape and newest-first order, and next_cursor pages within it. After means commit order: a trade recorded late with an earlier traded_at is still returned, and a trade whose write has not committed yet is returned on a later poll, never skipped. To poll, send the id of the first trade on the first page of your last answer that had trades, with If-None-Match set to the ETag you last received; when nothing new was recorded the answer is 304 with an empty body. A late trade can come back once, so deduplicate on id. Only with sort=recent. An id that names no trade, or one more than 10000 trades behind the newest, answers 400 with error.param since; request the list without since and continue from its first trade.
	Since *string `form:"since,omitempty" json:"since,omitempty"`

	// IfNoneMatch Conditional GET validator from a previous ETag. Matching values return 304 Not Modified with an empty body.
	IfNoneMatch *string `json:"If-None-Match,omitempty"`
}

ListLargeTradesParams defines parameters for ListLargeTrades.

type ListLargeTradesParamsMinGrade added in v0.4.0

type ListLargeTradesParamsMinGrade string

ListLargeTradesParamsMinGrade defines parameters for ListLargeTrades.

const (
	ListLargeTradesParamsMinGradeA ListLargeTradesParamsMinGrade = "A"
	ListLargeTradesParamsMinGradeB ListLargeTradesParamsMinGrade = "B"
	ListLargeTradesParamsMinGradeC ListLargeTradesParamsMinGrade = "C"
	ListLargeTradesParamsMinGradeD ListLargeTradesParamsMinGrade = "D"
	ListLargeTradesParamsMinGradeF ListLargeTradesParamsMinGrade = "F"
	ListLargeTradesParamsMinGradeS ListLargeTradesParamsMinGrade = "S"
)

Defines values for ListLargeTradesParamsMinGrade.

func (ListLargeTradesParamsMinGrade) Valid added in v0.4.0

Valid indicates whether the value is a known member of the ListLargeTradesParamsMinGrade enum.

type ListLargeTradesParamsSort added in v0.4.0

type ListLargeTradesParamsSort string

ListLargeTradesParamsSort defines parameters for ListLargeTrades.

const (
	ListLargeTradesParamsSortMarketVolumeShare ListLargeTradesParamsSort = "market_volume_share"
	ListLargeTradesParamsSortRecent            ListLargeTradesParamsSort = "recent"
)

Defines values for ListLargeTradesParamsSort.

func (ListLargeTradesParamsSort) Valid added in v0.4.0

func (e ListLargeTradesParamsSort) Valid() bool

Valid indicates whether the value is a known member of the ListLargeTradesParamsSort enum.

type ListLargeTradesResponse added in v0.4.0

type ListLargeTradesResponse struct {
	Body         []byte
	HTTPResponse *http.Response
	// JSON200 the response for an HTTP 200 `application/json` response
	JSON200 *struct {
		Data []LargeTrade `json:"data"`

		// DataQuality Writer-backed age and coverage for this page; it is part of the representation and the ETag, while transport cache facts remain in meta.
		DataQuality DataQuality                              `json:"data_quality"`
		HasMore     bool                                     `json:"has_more"`
		Meta        ResponseMeta                             `json:"meta"`
		NextCursor  *string                                  `json:"next_cursor,omitempty"`
		Object      ListLargeTrades200JSONResponseBodyObject `json:"object"`

		// Total Total matching rows when the read model exposes a count; absent (or null) when it does not.
		Total *int `json:"total,omitempty"`
	}
	// JSON400 the response for an HTTP 400 `application/json` response
	JSON400 *ApiError
	// JSON401 the response for an HTTP 401 `application/json` response
	JSON401 *ApiError
	// JSON402 the response for an HTTP 402 `application/json` response
	JSON402 *ApiError
	// JSON403 the response for an HTTP 403 `application/json` response
	JSON403 *ApiError
	// JSON408 the response for an HTTP 408 `application/json` response
	JSON408 *ApiError
	// JSON423 the response for an HTTP 423 `application/json` response
	JSON423 *ApiError
	// JSON429 the response for an HTTP 429 `application/json` response
	JSON429 *ApiError
	// JSON500 the response for an HTTP 500 `application/json` response
	JSON500 *ApiError
	// JSON503 the response for an HTTP 503 `application/json` response
	JSON503 *ApiError
	// Headers200 the parsed response headers for an HTTP 200 response
	Headers200 *ListLargeTradesResponse200Headers
	// Headers304 the parsed response headers for an HTTP 304 response
	Headers304 *ListLargeTradesResponse304Headers
	// Headers429 the parsed response headers for an HTTP 429 response
	Headers429 *ListLargeTradesResponse429Headers
	// Headers503 the parsed response headers for an HTTP 503 response
	Headers503 *ListLargeTradesResponse503Headers
}

func ParseListLargeTradesResponse added in v0.4.0

func ParseListLargeTradesResponse(rsp *http.Response) (*ListLargeTradesResponse, error)

ParseListLargeTradesResponse parses an HTTP response from a ListLargeTradesWithResponse call

func (ListLargeTradesResponse) ContentType added in v0.4.0

func (r ListLargeTradesResponse) ContentType() string

ContentType is a convenience method to retrieve the Content-Type value from the HTTP response headers

func (ListLargeTradesResponse) GetBody added in v0.4.0

func (r ListLargeTradesResponse) GetBody() []byte

GetBody returns the raw response body bytes

func (ListLargeTradesResponse) GetJSON200 added in v0.4.0

func (r ListLargeTradesResponse) GetJSON200() *struct {
	Data []LargeTrade `json:"data"`

	// DataQuality Writer-backed age and coverage for this page; it is part of the representation and the ETag, while transport cache facts remain in meta.
	DataQuality DataQuality                              `json:"data_quality"`
	HasMore     bool                                     `json:"has_more"`
	Meta        ResponseMeta                             `json:"meta"`
	NextCursor  *string                                  `json:"next_cursor,omitempty"`
	Object      ListLargeTrades200JSONResponseBodyObject `json:"object"`

	// Total Total matching rows when the read model exposes a count; absent (or null) when it does not.
	Total *int `json:"total,omitempty"`
}

GetJSON200 returns the response for an HTTP 200 `application/json` response

func (ListLargeTradesResponse) GetJSON400 added in v0.4.0

func (r ListLargeTradesResponse) GetJSON400() *ApiError

GetJSON400 returns the response for an HTTP 400 `application/json` response

func (ListLargeTradesResponse) GetJSON401 added in v0.4.0

func (r ListLargeTradesResponse) GetJSON401() *ApiError

GetJSON401 returns the response for an HTTP 401 `application/json` response

func (ListLargeTradesResponse) GetJSON402 added in v0.4.0

func (r ListLargeTradesResponse) GetJSON402() *ApiError

GetJSON402 returns the response for an HTTP 402 `application/json` response

func (ListLargeTradesResponse) GetJSON403 added in v0.4.0

func (r ListLargeTradesResponse) GetJSON403() *ApiError

GetJSON403 returns the response for an HTTP 403 `application/json` response

func (ListLargeTradesResponse) GetJSON408 added in v0.4.0

func (r ListLargeTradesResponse) GetJSON408() *ApiError

GetJSON408 returns the response for an HTTP 408 `application/json` response

func (ListLargeTradesResponse) GetJSON423 added in v0.4.0

func (r ListLargeTradesResponse) GetJSON423() *ApiError

GetJSON423 returns the response for an HTTP 423 `application/json` response

func (ListLargeTradesResponse) GetJSON429 added in v0.4.0

func (r ListLargeTradesResponse) GetJSON429() *ApiError

GetJSON429 returns the response for an HTTP 429 `application/json` response

func (ListLargeTradesResponse) GetJSON500 added in v0.4.0

func (r ListLargeTradesResponse) GetJSON500() *ApiError

GetJSON500 returns the response for an HTTP 500 `application/json` response

func (ListLargeTradesResponse) GetJSON503 added in v0.4.0

func (r ListLargeTradesResponse) GetJSON503() *ApiError

GetJSON503 returns the response for an HTTP 503 `application/json` response

func (ListLargeTradesResponse) Status added in v0.4.0

func (r ListLargeTradesResponse) Status() string

Status returns HTTPResponse.Status

func (ListLargeTradesResponse) StatusCode added in v0.4.0

func (r ListLargeTradesResponse) StatusCode() int

StatusCode returns HTTPResponse.StatusCode

type ListLargeTradesResponse200Headers added in v0.4.0

type ListLargeTradesResponse200Headers struct {
	ETag                *string
	RateLimitLimit      *int
	RateLimitRemaining  *int
	RateLimitReset      *int
	ServerTiming        *string
	XRateLimitLimit     *int
	XRateLimitRemaining *int
	XRateLimitReset     *int
	XRequestId          *string
	XUsageAccounting    *string
}

ListLargeTradesResponse200Headers the declared response headers of an HTTP 200 response for ListLargeTrades

type ListLargeTradesResponse304Headers added in v0.4.0

type ListLargeTradesResponse304Headers struct {
	ETag                *string
	RateLimitLimit      *int
	RateLimitRemaining  *int
	RateLimitReset      *int
	ServerTiming        *string
	XRateLimitLimit     *int
	XRateLimitRemaining *int
	XRateLimitReset     *int
	XRequestId          *string
	XUsageAccounting    *string
}

ListLargeTradesResponse304Headers the declared response headers of an HTTP 304 response for ListLargeTrades

type ListLargeTradesResponse429Headers added in v0.4.0

type ListLargeTradesResponse429Headers struct {
	RateLimitLimit      *int
	RateLimitRemaining  *int
	RateLimitReset      *int
	RetryAfter          *int
	XRateLimitLimit     *int
	XRateLimitRemaining *int
	XRateLimitReset     *int
	XRequestId          *string
}

ListLargeTradesResponse429Headers the declared response headers of an HTTP 429 response for ListLargeTrades

type ListLargeTradesResponse503Headers added in v0.4.0

type ListLargeTradesResponse503Headers struct {
	RetryAfter *int
	XRequestId *string
}

ListLargeTradesResponse503Headers the declared response headers of an HTTP 503 response for ListLargeTrades

type ListLeaderboard200JSONResponseBodyObject

type ListLeaderboard200JSONResponseBodyObject string

ListLeaderboard200JSONResponseBodyObject defines parameters for ListLeaderboard.

const (
	ListLeaderboard200JSONResponseBodyObjectList ListLeaderboard200JSONResponseBodyObject = "list"
)

Defines values for ListLeaderboard200JSONResponseBodyObject.

func (ListLeaderboard200JSONResponseBodyObject) Valid

Valid indicates whether the value is a known member of the ListLeaderboard200JSONResponseBodyObject enum.

type ListLeaderboardParams

type ListLeaderboardParams struct {
	// Limit Maximum number of ranked traders to return. Out-of-range values are clamped to 1..100.
	Limit *int `form:"limit,omitempty" json:"limit,omitempty"`

	// Cursor Opaque lbv1_ pagination cursor from a prior response. It binds the finite score/address boundary to the committed leaderboard generation and the effective category/strategy filters; legacy, malformed, non-finite, and unsupported-version cursors are rejected.
	Cursor *string `form:"cursor,omitempty" json:"cursor,omitempty"`

	// Category Filter by category. Values are matched to canonical category buckets: political variants (Elections, Global Politics, U.S. Politics, ...) fold into Politics, Geopolitics stays distinct, Culture/Entertainment map to Pop Culture, Science maps to Science & Tech, and Finance/Business map to Stocks. Mapped buckets are case-insensitive; passthrough categories (Crypto, NBA, and the sports leagues) match case-sensitively against the provider-native bucket key, so use exact casing (e.g. Crypto, NBA).
	Category *string `form:"category,omitempty" json:"category,omitempty"`

	// Strategy Filter by ML-detected strategy type. Values come from backend/crates/analytics/src/trader_analysis/classification/decision_tree.rs and are matched exactly against ml_trader_category.primary_type. Values outside the declared enum return HTTP 400.
	Strategy *ListLeaderboardParamsStrategy `form:"strategy,omitempty" json:"strategy,omitempty"`

	// XQueryValidation Opt into strict query-name validation. The default is compatible: unknown names are ignored and reported in X-Query-Ignored. With strict, an unknown name returns 400 bad_request with error.reason unknown_query_parameter before the handler runs, including when its percent escape is incomplete.
	XQueryValidation *ListLeaderboardParamsXQueryValidation `json:"X-Query-Validation,omitempty"`

	// IfNoneMatch Conditional GET validator from a previous ETag. Matching values return 304 Not Modified with an empty body.
	IfNoneMatch *string `json:"If-None-Match,omitempty"`
}

ListLeaderboardParams defines parameters for ListLeaderboard.

type ListLeaderboardParamsStrategy

type ListLeaderboardParamsStrategy string

ListLeaderboardParamsStrategy defines parameters for ListLeaderboard.

const (
	Accumulator ListLeaderboardParamsStrategy = "accumulator"
	AlgoTrader  ListLeaderboardParamsStrategy = "algo_trader"
	Arbitrageur ListLeaderboardParamsStrategy = "arbitrageur"
	Directional ListLeaderboardParamsStrategy = "directional"
	EventDriven ListLeaderboardParamsStrategy = "event_driven"
	MarketMaker ListLeaderboardParamsStrategy = "market_maker"
	Momentum    ListLeaderboardParamsStrategy = "momentum"
	Scalper     ListLeaderboardParamsStrategy = "scalper"
	Speculator  ListLeaderboardParamsStrategy = "speculator"
	SwingTrader ListLeaderboardParamsStrategy = "swing_trader"
)

Defines values for ListLeaderboardParamsStrategy.

func (ListLeaderboardParamsStrategy) Valid

Valid indicates whether the value is a known member of the ListLeaderboardParamsStrategy enum.

type ListLeaderboardParamsXQueryValidation added in v0.3.0

type ListLeaderboardParamsXQueryValidation string

ListLeaderboardParamsXQueryValidation defines parameters for ListLeaderboard.

const (
	ListLeaderboardParamsXQueryValidationStrict ListLeaderboardParamsXQueryValidation = "strict"
)

Defines values for ListLeaderboardParamsXQueryValidation.

func (ListLeaderboardParamsXQueryValidation) Valid added in v0.3.0

Valid indicates whether the value is a known member of the ListLeaderboardParamsXQueryValidation enum.

type ListLeaderboardResponse

type ListLeaderboardResponse struct {
	Body         []byte
	HTTPResponse *http.Response
	// JSON200 the response for an HTTP 200 `application/json` response
	JSON200 *struct {
		Data       []LeaderboardEntry                       `json:"data"`
		HasMore    bool                                     `json:"has_more"`
		Meta       ResponseMeta                             `json:"meta"`
		NextCursor *string                                  `json:"next_cursor,omitempty"`
		Object     ListLeaderboard200JSONResponseBodyObject `json:"object"`

		// Total Total matching rows when the read model exposes a count; the key is absent when it does not.
		Total *int `json:"total,omitempty"`
	}
	// JSON400 the response for an HTTP 400 `application/json` response
	JSON400 *ApiError
	// JSON401 the response for an HTTP 401 `application/json` response
	JSON401 *ApiError
	// JSON402 the response for an HTTP 402 `application/json` response
	JSON402 *ApiError
	// JSON403 the response for an HTTP 403 `application/json` response
	JSON403 *ApiError
	// JSON408 the response for an HTTP 408 `application/json` response
	JSON408 *ApiError
	// JSON423 the response for an HTTP 423 `application/json` response
	JSON423 *ApiError
	// JSON429 the response for an HTTP 429 `application/json` response
	JSON429 *ApiError
	// JSON500 the response for an HTTP 500 `application/json` response
	JSON500 *ApiError
	// JSON503 the response for an HTTP 503 `application/json` response
	JSON503 *ApiError
	// Headers200 the parsed response headers for an HTTP 200 response
	Headers200 *ListLeaderboardResponse200Headers
	// Headers304 the parsed response headers for an HTTP 304 response
	Headers304 *ListLeaderboardResponse304Headers
	// Headers429 the parsed response headers for an HTTP 429 response
	Headers429 *ListLeaderboardResponse429Headers
	// Headers503 the parsed response headers for an HTTP 503 response
	Headers503 *ListLeaderboardResponse503Headers
}

func ParseListLeaderboardResponse

func ParseListLeaderboardResponse(rsp *http.Response) (*ListLeaderboardResponse, error)

ParseListLeaderboardResponse parses an HTTP response from a ListLeaderboardWithResponse call

func (ListLeaderboardResponse) ContentType

func (r ListLeaderboardResponse) ContentType() string

ContentType is a convenience method to retrieve the Content-Type value from the HTTP response headers

func (ListLeaderboardResponse) GetBody

func (r ListLeaderboardResponse) GetBody() []byte

GetBody returns the raw response body bytes

func (ListLeaderboardResponse) GetJSON200

func (r ListLeaderboardResponse) GetJSON200() *struct {
	Data       []LeaderboardEntry                       `json:"data"`
	HasMore    bool                                     `json:"has_more"`
	Meta       ResponseMeta                             `json:"meta"`
	NextCursor *string                                  `json:"next_cursor,omitempty"`
	Object     ListLeaderboard200JSONResponseBodyObject `json:"object"`

	// Total Total matching rows when the read model exposes a count; the key is absent when it does not.
	Total *int `json:"total,omitempty"`
}

GetJSON200 returns the response for an HTTP 200 `application/json` response

func (ListLeaderboardResponse) GetJSON400

func (r ListLeaderboardResponse) GetJSON400() *ApiError

GetJSON400 returns the response for an HTTP 400 `application/json` response

func (ListLeaderboardResponse) GetJSON401

func (r ListLeaderboardResponse) GetJSON401() *ApiError

GetJSON401 returns the response for an HTTP 401 `application/json` response

func (ListLeaderboardResponse) GetJSON402

func (r ListLeaderboardResponse) GetJSON402() *ApiError

GetJSON402 returns the response for an HTTP 402 `application/json` response

func (ListLeaderboardResponse) GetJSON403

func (r ListLeaderboardResponse) GetJSON403() *ApiError

GetJSON403 returns the response for an HTTP 403 `application/json` response

func (ListLeaderboardResponse) GetJSON408 added in v0.2.0

func (r ListLeaderboardResponse) GetJSON408() *ApiError

GetJSON408 returns the response for an HTTP 408 `application/json` response

func (ListLeaderboardResponse) GetJSON423

func (r ListLeaderboardResponse) GetJSON423() *ApiError

GetJSON423 returns the response for an HTTP 423 `application/json` response

func (ListLeaderboardResponse) GetJSON429

func (r ListLeaderboardResponse) GetJSON429() *ApiError

GetJSON429 returns the response for an HTTP 429 `application/json` response

func (ListLeaderboardResponse) GetJSON500 added in v0.4.0

func (r ListLeaderboardResponse) GetJSON500() *ApiError

GetJSON500 returns the response for an HTTP 500 `application/json` response

func (ListLeaderboardResponse) GetJSON503

func (r ListLeaderboardResponse) GetJSON503() *ApiError

GetJSON503 returns the response for an HTTP 503 `application/json` response

func (ListLeaderboardResponse) Status

func (r ListLeaderboardResponse) Status() string

Status returns HTTPResponse.Status

func (ListLeaderboardResponse) StatusCode

func (r ListLeaderboardResponse) StatusCode() int

StatusCode returns HTTPResponse.StatusCode

type ListLeaderboardResponse200Headers

type ListLeaderboardResponse200Headers struct {
	ETag                *string
	RateLimitLimit      *int
	RateLimitRemaining  *int
	RateLimitReset      *int
	ServerTiming        *string
	XEffectiveQuery     *string
	XQueryIgnored       *string
	XRateLimitLimit     *int
	XRateLimitRemaining *int
	XRateLimitReset     *int
	XRequestId          *string
	XUsageAccounting    *string
}

ListLeaderboardResponse200Headers the declared response headers of an HTTP 200 response for ListLeaderboard

type ListLeaderboardResponse304Headers

type ListLeaderboardResponse304Headers struct {
	ETag                *string
	RateLimitLimit      *int
	RateLimitRemaining  *int
	RateLimitReset      *int
	ServerTiming        *string
	XEffectiveQuery     *string
	XQueryIgnored       *string
	XRateLimitLimit     *int
	XRateLimitRemaining *int
	XRateLimitReset     *int
	XRequestId          *string
	XUsageAccounting    *string
}

ListLeaderboardResponse304Headers the declared response headers of an HTTP 304 response for ListLeaderboard

type ListLeaderboardResponse429Headers

type ListLeaderboardResponse429Headers struct {
	RateLimitLimit      *int
	RateLimitRemaining  *int
	RateLimitReset      *int
	RetryAfter          *int
	XRateLimitLimit     *int
	XRateLimitRemaining *int
	XRateLimitReset     *int
	XRequestId          *string
}

ListLeaderboardResponse429Headers the declared response headers of an HTTP 429 response for ListLeaderboard

type ListLeaderboardResponse503Headers

type ListLeaderboardResponse503Headers struct {
	RetryAfter *int
	XRequestId *string
}

ListLeaderboardResponse503Headers the declared response headers of an HTTP 503 response for ListLeaderboard

type ListPositions200JSONResponseBodyObject

type ListPositions200JSONResponseBodyObject string

ListPositions200JSONResponseBodyObject defines parameters for ListPositions.

const (
	ListPositions200JSONResponseBodyObjectList ListPositions200JSONResponseBodyObject = "list"
)

Defines values for ListPositions200JSONResponseBodyObject.

func (ListPositions200JSONResponseBodyObject) Valid

Valid indicates whether the value is a known member of the ListPositions200JSONResponseBodyObject enum.

type ListPositionsParams

type ListPositionsParams struct {
	// Limit Maximum number of current positions to return. Out-of-range values are clamped to 1..100.
	Limit *int `form:"limit,omitempty" json:"limit,omitempty"`

	// Cursor Pagination cursor from previous response's next_cursor.
	Cursor *string `form:"cursor,omitempty" json:"cursor,omitempty"`

	// Consistency live (default) reads the current value-ordered board. snapshot requires wallet and freezes up to 500 matching rows and 2 MB for up to five minutes. Keep consistency=snapshot and the same effective filters on every page; changing filters returns 400. A new first page from the same API key replaces its prior snapshot; replacement or expiry returns cursor_expired.
	Consistency *ListPositionsParamsConsistency `form:"consistency,omitempty" json:"consistency,omitempty"`

	// MinSize Minimum current position value in USD. Defaults to 100 when omitted, or to 0 when wallet is present; send 0 to include every reconciled position.
	MinSize *float32 `form:"min_size,omitempty" json:"min_size,omitempty"`

	// Category Exact match against provider-backed market_canonical.category.
	Category *string `form:"category,omitempty" json:"category,omitempty"`

	// ConditionId Scope to one market. Accepts the raw provider condition_id or the mkt_-prefixed market id emitted by V1 responses. Combine with min_size=0 for every reconciled position in that market; an unknown id returns [].
	ConditionId *string `form:"condition_id,omitempty" json:"condition_id,omitempty"`

	// Wallet Scope to one wallet or a book of wallets (repeatable, up to 25 per request; comma-separated values inside one occurrence also work). Each value is a wallet address, a known username, or a trd_-prefixed trader id, resolved like /api/v1/trader/{address}. The response keeps the board's order and cursor, so pages of a book interleave wallets by current_value_usd. An address this API has never tracked returns its mirror rows or an empty list; a username or trader id that resolves to nothing is a 404 naming wallet; more than 25 values is a 400. min_size defaults to 0 when wallet is present.
	Wallet *[]string `form:"wallet,omitempty" json:"wallet,omitempty"`

	// MinGrade Minimum trader grade allowlist. `A` matches S and A; `B` matches S, A, B; etc.
	MinGrade *ListPositionsParamsMinGrade `form:"min_grade,omitempty" json:"min_grade,omitempty"`

	// Side Filter by the binary outcome side. `yes` maps to outcome_index=0, `no` to outcome_index=1.
	Side *ListPositionsParamsSide `form:"side,omitempty" json:"side,omitempty"`

	// XQueryValidation Opt into strict query-name validation. The default is compatible: unknown names are ignored and reported in X-Query-Ignored. With strict, an unknown name returns 400 bad_request with error.reason unknown_query_parameter before the handler runs, including when its percent escape is incomplete.
	XQueryValidation *ListPositionsParamsXQueryValidation `json:"X-Query-Validation,omitempty"`

	// IfNoneMatch Conditional GET validator from a previous ETag. Matching values return 304 Not Modified with an empty body.
	IfNoneMatch *string `json:"If-None-Match,omitempty"`
}

ListPositionsParams defines parameters for ListPositions.

type ListPositionsParamsConsistency added in v0.4.0

type ListPositionsParamsConsistency string

ListPositionsParamsConsistency defines parameters for ListPositions.

const (
	ListPositionsParamsConsistencyLive     ListPositionsParamsConsistency = "live"
	ListPositionsParamsConsistencySnapshot ListPositionsParamsConsistency = "snapshot"
)

Defines values for ListPositionsParamsConsistency.

func (ListPositionsParamsConsistency) Valid added in v0.4.0

Valid indicates whether the value is a known member of the ListPositionsParamsConsistency enum.

type ListPositionsParamsMinGrade

type ListPositionsParamsMinGrade string

ListPositionsParamsMinGrade defines parameters for ListPositions.

const (
	ListPositionsParamsMinGradeA ListPositionsParamsMinGrade = "A"
	ListPositionsParamsMinGradeB ListPositionsParamsMinGrade = "B"
	ListPositionsParamsMinGradeC ListPositionsParamsMinGrade = "C"
	ListPositionsParamsMinGradeD ListPositionsParamsMinGrade = "D"
	ListPositionsParamsMinGradeF ListPositionsParamsMinGrade = "F"
	ListPositionsParamsMinGradeS ListPositionsParamsMinGrade = "S"
)

Defines values for ListPositionsParamsMinGrade.

func (ListPositionsParamsMinGrade) Valid

Valid indicates whether the value is a known member of the ListPositionsParamsMinGrade enum.

type ListPositionsParamsSide

type ListPositionsParamsSide string

ListPositionsParamsSide defines parameters for ListPositions.

const (
	ListPositionsParamsSideNo  ListPositionsParamsSide = "no"
	ListPositionsParamsSideYes ListPositionsParamsSide = "yes"
)

Defines values for ListPositionsParamsSide.

func (ListPositionsParamsSide) Valid

func (e ListPositionsParamsSide) Valid() bool

Valid indicates whether the value is a known member of the ListPositionsParamsSide enum.

type ListPositionsParamsXQueryValidation added in v0.3.0

type ListPositionsParamsXQueryValidation string

ListPositionsParamsXQueryValidation defines parameters for ListPositions.

const (
	ListPositionsParamsXQueryValidationStrict ListPositionsParamsXQueryValidation = "strict"
)

Defines values for ListPositionsParamsXQueryValidation.

func (ListPositionsParamsXQueryValidation) Valid added in v0.3.0

Valid indicates whether the value is a known member of the ListPositionsParamsXQueryValidation enum.

type ListPositionsResponse

type ListPositionsResponse struct {
	Body         []byte
	HTTPResponse *http.Response
	// JSON200 the response for an HTTP 200 `application/json` response
	JSON200 *struct {
		Data []Position `json:"data"`

		// DataQuality Writer-backed age and coverage for this page; it is part of the representation and the ETag, while transport cache facts remain in meta.
		DataQuality DataQuality                            `json:"data_quality"`
		HasMore     bool                                   `json:"has_more"`
		Meta        ResponseMeta                           `json:"meta"`
		NextCursor  *string                                `json:"next_cursor,omitempty"`
		Object      ListPositions200JSONResponseBodyObject `json:"object"`

		// Snapshot Present only with consistency=snapshot. Dates the frozen response rows, not the provider's underlying observations.
		Snapshot *struct {
			AsOf      time.Time `json:"as_of"`
			ExpiresAt time.Time `json:"expires_at"`
			RowCount  int       `json:"row_count"`
		} `json:"snapshot,omitempty"`

		// Total Total matching rows when the read model exposes a count; the key is absent when it does not.
		Total *int `json:"total,omitempty"`
	}
	// JSON400 the response for an HTTP 400 `application/json` response
	JSON400 *ApiError
	// JSON401 the response for an HTTP 401 `application/json` response
	JSON401 *ApiError
	// JSON402 the response for an HTTP 402 `application/json` response
	JSON402 *ApiError
	// JSON403 the response for an HTTP 403 `application/json` response
	JSON403 *ApiError
	// JSON404 the response for an HTTP 404 `application/json` response
	JSON404 *ApiError
	// JSON408 the response for an HTTP 408 `application/json` response
	JSON408 *ApiError
	// JSON423 the response for an HTTP 423 `application/json` response
	JSON423 *ApiError
	// JSON429 the response for an HTTP 429 `application/json` response
	JSON429 *ApiError
	// JSON500 the response for an HTTP 500 `application/json` response
	JSON500 *ApiError
	// JSON503 the response for an HTTP 503 `application/json` response
	JSON503 *ApiError
	// Headers200 the parsed response headers for an HTTP 200 response
	Headers200 *ListPositionsResponse200Headers
	// Headers304 the parsed response headers for an HTTP 304 response
	Headers304 *ListPositionsResponse304Headers
	// Headers429 the parsed response headers for an HTTP 429 response
	Headers429 *ListPositionsResponse429Headers
	// Headers503 the parsed response headers for an HTTP 503 response
	Headers503 *ListPositionsResponse503Headers
}

func ParseListPositionsResponse

func ParseListPositionsResponse(rsp *http.Response) (*ListPositionsResponse, error)

ParseListPositionsResponse parses an HTTP response from a ListPositionsWithResponse call

func (ListPositionsResponse) ContentType

func (r ListPositionsResponse) ContentType() string

ContentType is a convenience method to retrieve the Content-Type value from the HTTP response headers

func (ListPositionsResponse) GetBody

func (r ListPositionsResponse) GetBody() []byte

GetBody returns the raw response body bytes

func (ListPositionsResponse) GetJSON200

func (r ListPositionsResponse) GetJSON200() *struct {
	Data []Position `json:"data"`

	// DataQuality Writer-backed age and coverage for this page; it is part of the representation and the ETag, while transport cache facts remain in meta.
	DataQuality DataQuality                            `json:"data_quality"`
	HasMore     bool                                   `json:"has_more"`
	Meta        ResponseMeta                           `json:"meta"`
	NextCursor  *string                                `json:"next_cursor,omitempty"`
	Object      ListPositions200JSONResponseBodyObject `json:"object"`

	// Snapshot Present only with consistency=snapshot. Dates the frozen response rows, not the provider's underlying observations.
	Snapshot *struct {
		AsOf      time.Time `json:"as_of"`
		ExpiresAt time.Time `json:"expires_at"`
		RowCount  int       `json:"row_count"`
	} `json:"snapshot,omitempty"`

	// Total Total matching rows when the read model exposes a count; the key is absent when it does not.
	Total *int `json:"total,omitempty"`
}

GetJSON200 returns the response for an HTTP 200 `application/json` response

func (ListPositionsResponse) GetJSON400

func (r ListPositionsResponse) GetJSON400() *ApiError

GetJSON400 returns the response for an HTTP 400 `application/json` response

func (ListPositionsResponse) GetJSON401

func (r ListPositionsResponse) GetJSON401() *ApiError

GetJSON401 returns the response for an HTTP 401 `application/json` response

func (ListPositionsResponse) GetJSON402

func (r ListPositionsResponse) GetJSON402() *ApiError

GetJSON402 returns the response for an HTTP 402 `application/json` response

func (ListPositionsResponse) GetJSON403

func (r ListPositionsResponse) GetJSON403() *ApiError

GetJSON403 returns the response for an HTTP 403 `application/json` response

func (ListPositionsResponse) GetJSON404 added in v0.4.0

func (r ListPositionsResponse) GetJSON404() *ApiError

GetJSON404 returns the response for an HTTP 404 `application/json` response

func (ListPositionsResponse) GetJSON408 added in v0.2.0

func (r ListPositionsResponse) GetJSON408() *ApiError

GetJSON408 returns the response for an HTTP 408 `application/json` response

func (ListPositionsResponse) GetJSON423

func (r ListPositionsResponse) GetJSON423() *ApiError

GetJSON423 returns the response for an HTTP 423 `application/json` response

func (ListPositionsResponse) GetJSON429

func (r ListPositionsResponse) GetJSON429() *ApiError

GetJSON429 returns the response for an HTTP 429 `application/json` response

func (ListPositionsResponse) GetJSON500 added in v0.4.0

func (r ListPositionsResponse) GetJSON500() *ApiError

GetJSON500 returns the response for an HTTP 500 `application/json` response

func (ListPositionsResponse) GetJSON503

func (r ListPositionsResponse) GetJSON503() *ApiError

GetJSON503 returns the response for an HTTP 503 `application/json` response

func (ListPositionsResponse) Status

func (r ListPositionsResponse) Status() string

Status returns HTTPResponse.Status

func (ListPositionsResponse) StatusCode

func (r ListPositionsResponse) StatusCode() int

StatusCode returns HTTPResponse.StatusCode

type ListPositionsResponse200Headers

type ListPositionsResponse200Headers struct {
	ETag                *string
	RateLimitLimit      *int
	RateLimitRemaining  *int
	RateLimitReset      *int
	ServerTiming        *string
	XEffectiveQuery     *string
	XQueryIgnored       *string
	XRateLimitLimit     *int
	XRateLimitRemaining *int
	XRateLimitReset     *int
	XRequestId          *string
	XUsageAccounting    *string
}

ListPositionsResponse200Headers the declared response headers of an HTTP 200 response for ListPositions

type ListPositionsResponse304Headers

type ListPositionsResponse304Headers struct {
	ETag                *string
	RateLimitLimit      *int
	RateLimitRemaining  *int
	RateLimitReset      *int
	ServerTiming        *string
	XEffectiveQuery     *string
	XQueryIgnored       *string
	XRateLimitLimit     *int
	XRateLimitRemaining *int
	XRateLimitReset     *int
	XRequestId          *string
	XUsageAccounting    *string
}

ListPositionsResponse304Headers the declared response headers of an HTTP 304 response for ListPositions

type ListPositionsResponse429Headers

type ListPositionsResponse429Headers struct {
	RateLimitLimit      *int
	RateLimitRemaining  *int
	RateLimitReset      *int
	RetryAfter          *int
	XRateLimitLimit     *int
	XRateLimitRemaining *int
	XRateLimitReset     *int
	XRequestId          *string
}

ListPositionsResponse429Headers the declared response headers of an HTTP 429 response for ListPositions

type ListPositionsResponse503Headers

type ListPositionsResponse503Headers struct {
	RetryAfter *int
	XRequestId *string
}

ListPositionsResponse503Headers the declared response headers of an HTTP 503 response for ListPositions

type ListPreGameSideObservations200JSONResponseBodyObject added in v0.4.0

type ListPreGameSideObservations200JSONResponseBodyObject string

ListPreGameSideObservations200JSONResponseBodyObject defines parameters for ListPreGameSideObservations.

const (
	ListPreGameSideObservations200JSONResponseBodyObjectList ListPreGameSideObservations200JSONResponseBodyObject = "list"
)

Defines values for ListPreGameSideObservations200JSONResponseBodyObject.

func (ListPreGameSideObservations200JSONResponseBodyObject) Valid added in v0.4.0

Valid indicates whether the value is a known member of the ListPreGameSideObservations200JSONResponseBodyObject enum.

type ListPreGameSideObservationsParams added in v0.4.0

type ListPreGameSideObservationsParams struct {
	// Cohort Observation cohort. wider_holder measures pre-game holder piles outside the funded route's exact raw signals admission. in_play admits only provider-confirmed live games and excludes stale or unavailable provider live-board, holder, or directional evidence. emerging_pile is a post-compute wider_holder projection for finite sharp_pct in [0.75, 0.85) with holder_scan_complete=true and a kickoff after its pinned projection cutoff; it overlaps wider_holder, is not an independent denominator, and is not arrival history.
	Cohort ListPreGameSideObservationsParamsCohort `form:"cohort" json:"cohort"`

	// Category Optional canonical sport bucket. Omitted or blank selects all registered sports. Raw provider categories resolve through the canonical taxonomy, including table-tennis or table tennis to Table Tennis and pickleball to Pickleball; a non-sport category returns an empty list.
	Category *string `form:"category,omitempty" json:"category,omitempty"`

	// Limit Page size. Out-of-range values are clamped to 1..100.
	Limit *int `form:"limit,omitempty" json:"limit,omitempty"`

	// Cursor Server-authenticated opaque seo_v2_ cursor from next_cursor. Pins snapshot_as_of, cohort, rank, and condition_id; pre-deploy unsigned seo_ cursors are rejected, so clients must request the first page after this contract ships; emerging_pile cursors also pin the first-page projection_now cutoff so kickoff filtering cannot renumber continuation pages. Client edits fail closed; it cannot cross cohorts; a refreshed snapshot invalidates it with 400.
	Cursor *string `form:"cursor,omitempty" json:"cursor,omitempty"`

	// XQueryValidation Opt into strict query-name validation. The default is compatible: unknown names are ignored and reported in X-Query-Ignored. With strict, an unknown name returns 400 bad_request with error.reason unknown_query_parameter before the handler runs, including when its percent escape is incomplete.
	XQueryValidation *ListPreGameSideObservationsParamsXQueryValidation `json:"X-Query-Validation,omitempty"`

	// IfNoneMatch Conditional GET using a previous weak semantic ETag. Matching stable payloads return 304 Not Modified with an empty body; request-specific meta and the opaque emerging_pile projection cutoff inside next_cursor are excluded from validation.
	IfNoneMatch *string `json:"If-None-Match,omitempty"`
}

ListPreGameSideObservationsParams defines parameters for ListPreGameSideObservations.

type ListPreGameSideObservationsParamsCohort added in v0.4.0

type ListPreGameSideObservationsParamsCohort string

ListPreGameSideObservationsParamsCohort defines parameters for ListPreGameSideObservations.

const (
	ListPreGameSideObservationsParamsCohortEmergingPile ListPreGameSideObservationsParamsCohort = "emerging_pile"
	ListPreGameSideObservationsParamsCohortInPlay       ListPreGameSideObservationsParamsCohort = "in_play"
	ListPreGameSideObservationsParamsCohortWiderHolder  ListPreGameSideObservationsParamsCohort = "wider_holder"
)

Defines values for ListPreGameSideObservationsParamsCohort.

func (ListPreGameSideObservationsParamsCohort) Valid added in v0.4.0

Valid indicates whether the value is a known member of the ListPreGameSideObservationsParamsCohort enum.

type ListPreGameSideObservationsParamsXQueryValidation added in v0.4.0

type ListPreGameSideObservationsParamsXQueryValidation string

ListPreGameSideObservationsParamsXQueryValidation defines parameters for ListPreGameSideObservations.

const (
	ListPreGameSideObservationsParamsXQueryValidationStrict ListPreGameSideObservationsParamsXQueryValidation = "strict"
)

Defines values for ListPreGameSideObservationsParamsXQueryValidation.

func (ListPreGameSideObservationsParamsXQueryValidation) Valid added in v0.4.0

Valid indicates whether the value is a known member of the ListPreGameSideObservationsParamsXQueryValidation enum.

type ListPreGameSideObservationsResponse added in v0.4.0

type ListPreGameSideObservationsResponse struct {
	Body         []byte
	HTTPResponse *http.Response
	// JSON200 the response for an HTTP 200 `application/json` response
	JSON200 *struct {
		Data []PreGameSideObservation `json:"data"`

		// Degraded True when an operational failure or unknown provider-board, holder, directional, reconciliation, or internal completeness state made this snapshot partial. This is snapshot-wide and can retain degradation that the funnel's one-terminal-per-input accounting cannot represent. Intentional bounded capacity_limited rows remain fully accounted in the funnel and do not by themselves set this field.
		Degraded bool `json:"degraded"`

		// Funnel Per-sport accountable funnel for the full observation snapshot, returned on every page.
		Funnel  PreGameSideFunnelReport `json:"funnel"`
		HasMore bool                    `json:"has_more"`
		Meta    ResponseMeta            `json:"meta"`

		// NextCursor Pass as cursor for the next page. Always sent; null on the last page.
		NextCursor string                                               `json:"next_cursor"`
		Object     ListPreGameSideObservations200JSONResponseBodyObject `json:"object"`

		// SnapshotAsOf Completion time of the shared observation snapshot pinned by the cursor.
		SnapshotAsOf time.Time `json:"snapshot_as_of"`
	}
	// JSON400 the response for an HTTP 400 `application/json` response
	JSON400 *ApiError
	// JSON401 the response for an HTTP 401 `application/json` response
	JSON401 *ApiError
	// JSON402 the response for an HTTP 402 `application/json` response
	JSON402 *ApiError
	// JSON403 the response for an HTTP 403 `application/json` response
	JSON403 *ApiError
	// JSON408 the response for an HTTP 408 `application/json` response
	JSON408 *ApiError
	// JSON423 the response for an HTTP 423 `application/json` response
	JSON423 *ApiError
	// JSON429 the response for an HTTP 429 `application/json` response
	JSON429 *ApiError
	// JSON500 the response for an HTTP 500 `application/json` response
	JSON500 *ApiError
	// JSON503 the response for an HTTP 503 `application/json` response
	JSON503 *ApiError
	// Headers200 the parsed response headers for an HTTP 200 response
	Headers200 *ListPreGameSideObservationsResponse200Headers
	// Headers304 the parsed response headers for an HTTP 304 response
	Headers304 *ListPreGameSideObservationsResponse304Headers
	// Headers429 the parsed response headers for an HTTP 429 response
	Headers429 *ListPreGameSideObservationsResponse429Headers
	// Headers503 the parsed response headers for an HTTP 503 response
	Headers503 *ListPreGameSideObservationsResponse503Headers
}

func ParseListPreGameSideObservationsResponse added in v0.4.0

func ParseListPreGameSideObservationsResponse(rsp *http.Response) (*ListPreGameSideObservationsResponse, error)

ParseListPreGameSideObservationsResponse parses an HTTP response from a ListPreGameSideObservationsWithResponse call

func (ListPreGameSideObservationsResponse) ContentType added in v0.4.0

ContentType is a convenience method to retrieve the Content-Type value from the HTTP response headers

func (ListPreGameSideObservationsResponse) GetBody added in v0.4.0

GetBody returns the raw response body bytes

func (ListPreGameSideObservationsResponse) GetJSON200 added in v0.4.0

func (r ListPreGameSideObservationsResponse) GetJSON200() *struct {
	Data []PreGameSideObservation `json:"data"`

	// Degraded True when an operational failure or unknown provider-board, holder, directional, reconciliation, or internal completeness state made this snapshot partial. This is snapshot-wide and can retain degradation that the funnel's one-terminal-per-input accounting cannot represent. Intentional bounded capacity_limited rows remain fully accounted in the funnel and do not by themselves set this field.
	Degraded bool `json:"degraded"`

	// Funnel Per-sport accountable funnel for the full observation snapshot, returned on every page.
	Funnel  PreGameSideFunnelReport `json:"funnel"`
	HasMore bool                    `json:"has_more"`
	Meta    ResponseMeta            `json:"meta"`

	// NextCursor Pass as cursor for the next page. Always sent; null on the last page.
	NextCursor string                                               `json:"next_cursor"`
	Object     ListPreGameSideObservations200JSONResponseBodyObject `json:"object"`

	// SnapshotAsOf Completion time of the shared observation snapshot pinned by the cursor.
	SnapshotAsOf time.Time `json:"snapshot_as_of"`
}

GetJSON200 returns the response for an HTTP 200 `application/json` response

func (ListPreGameSideObservationsResponse) GetJSON400 added in v0.4.0

GetJSON400 returns the response for an HTTP 400 `application/json` response

func (ListPreGameSideObservationsResponse) GetJSON401 added in v0.4.0

GetJSON401 returns the response for an HTTP 401 `application/json` response

func (ListPreGameSideObservationsResponse) GetJSON402 added in v0.4.0

GetJSON402 returns the response for an HTTP 402 `application/json` response

func (ListPreGameSideObservationsResponse) GetJSON403 added in v0.4.0

GetJSON403 returns the response for an HTTP 403 `application/json` response

func (ListPreGameSideObservationsResponse) GetJSON408 added in v0.4.0

GetJSON408 returns the response for an HTTP 408 `application/json` response

func (ListPreGameSideObservationsResponse) GetJSON423 added in v0.4.0

GetJSON423 returns the response for an HTTP 423 `application/json` response

func (ListPreGameSideObservationsResponse) GetJSON429 added in v0.4.0

GetJSON429 returns the response for an HTTP 429 `application/json` response

func (ListPreGameSideObservationsResponse) GetJSON500 added in v0.4.0

GetJSON500 returns the response for an HTTP 500 `application/json` response

func (ListPreGameSideObservationsResponse) GetJSON503 added in v0.4.0

GetJSON503 returns the response for an HTTP 503 `application/json` response

func (ListPreGameSideObservationsResponse) Status added in v0.4.0

Status returns HTTPResponse.Status

func (ListPreGameSideObservationsResponse) StatusCode added in v0.4.0

StatusCode returns HTTPResponse.StatusCode

type ListPreGameSideObservationsResponse200Headers added in v0.4.0

type ListPreGameSideObservationsResponse200Headers struct {
	CacheControl        *string
	ETag                *string
	RateLimitLimit      *int
	RateLimitRemaining  *int
	RateLimitReset      *int
	ServerTiming        *string
	XEffectiveQuery     *string
	XQueryIgnored       *string
	XRateLimitLimit     *int
	XRateLimitRemaining *int
	XRateLimitReset     *int
	XRequestId          *string
	XUsageAccounting    *string
}

ListPreGameSideObservationsResponse200Headers the declared response headers of an HTTP 200 response for ListPreGameSideObservations

type ListPreGameSideObservationsResponse304Headers added in v0.4.0

type ListPreGameSideObservationsResponse304Headers struct {
	CacheControl        *string
	ETag                *string
	RateLimitLimit      *int
	RateLimitRemaining  *int
	RateLimitReset      *int
	ServerTiming        *string
	XEffectiveQuery     *string
	XQueryIgnored       *string
	XRateLimitLimit     *int
	XRateLimitRemaining *int
	XRateLimitReset     *int
	XRequestId          *string
	XUsageAccounting    *string
}

ListPreGameSideObservationsResponse304Headers the declared response headers of an HTTP 304 response for ListPreGameSideObservations

type ListPreGameSideObservationsResponse429Headers added in v0.4.0

type ListPreGameSideObservationsResponse429Headers struct {
	RateLimitLimit      *int
	RateLimitRemaining  *int
	RateLimitReset      *int
	RetryAfter          *int
	XRateLimitLimit     *int
	XRateLimitRemaining *int
	XRateLimitReset     *int
	XRequestId          *string
}

ListPreGameSideObservationsResponse429Headers the declared response headers of an HTTP 429 response for ListPreGameSideObservations

type ListPreGameSideObservationsResponse503Headers added in v0.4.0

type ListPreGameSideObservationsResponse503Headers struct {
	RetryAfter *int
	XRequestId *string
}

ListPreGameSideObservationsResponse503Headers the declared response headers of an HTTP 503 response for ListPreGameSideObservations

type ListPreGameSides200JSONResponseBodyObject added in v0.4.0

type ListPreGameSides200JSONResponseBodyObject string

ListPreGameSides200JSONResponseBodyObject defines parameters for ListPreGameSides.

const (
	ListPreGameSides200JSONResponseBodyObjectList ListPreGameSides200JSONResponseBodyObject = "list"
)

Defines values for ListPreGameSides200JSONResponseBodyObject.

func (ListPreGameSides200JSONResponseBodyObject) Valid added in v0.4.0

Valid indicates whether the value is a known member of the ListPreGameSides200JSONResponseBodyObject enum.

type ListPreGameSidesParams added in v0.4.0

type ListPreGameSidesParams struct {
	// Category Optional canonical sport bucket filter (e.g. Basketball, Tennis, Soccer). A raw provider value (NBA) resolves to its canonical bucket. A non-sport category returns an empty list.
	Category *string `form:"category,omitempty" json:"category,omitempty"`

	// Limit Page size. Out-of-range values are clamped to 1..100.
	Limit *int `form:"limit,omitempty" json:"limit,omitempty"`

	// Cursor Opaque cursor from a previous response's next_cursor. Encodes the snapshot anchor plus the last row's directional_rank_score, conviction_score, smart_score and condition_id. A cursor from an expired snapshot returns 400.
	Cursor *string `form:"cursor,omitempty" json:"cursor,omitempty"`

	// HorizonHours Kickoff ceiling in hours from now; the floor is now (only games not yet started). Clamped to 1..48.
	HorizonHours *int `form:"horizon_hours,omitempty" json:"horizon_hours,omitempty"`

	// MinGrade Minimum trader grade required on the piled side. Only S, A, B are accepted (the piled-side grade distribution is S/A/B only; C, D, F return 400). Default B means at least one S/A/B holder is piled; S requires an S holder, A requires an S or A holder.
	MinGrade *ListPreGameSidesParamsMinGrade `form:"min_grade,omitempty" json:"min_grade,omitempty"`

	// XQueryValidation Opt into strict query-name validation. The default is compatible: unknown names are ignored and reported in X-Query-Ignored. With strict, an unknown name returns 400 bad_request with error.reason unknown_query_parameter before the handler runs, including when its percent escape is incomplete.
	XQueryValidation *ListPreGameSidesParamsXQueryValidation `json:"X-Query-Validation,omitempty"`

	// IfNoneMatch Conditional GET validator from a previous ETag. Matching values return 304 Not Modified with an empty body.
	IfNoneMatch *string `json:"If-None-Match,omitempty"`
}

ListPreGameSidesParams defines parameters for ListPreGameSides.

type ListPreGameSidesParamsMinGrade added in v0.4.0

type ListPreGameSidesParamsMinGrade string

ListPreGameSidesParamsMinGrade defines parameters for ListPreGameSides.

const (
	ListPreGameSidesParamsMinGradeA ListPreGameSidesParamsMinGrade = "A"
	ListPreGameSidesParamsMinGradeB ListPreGameSidesParamsMinGrade = "B"
	ListPreGameSidesParamsMinGradeS ListPreGameSidesParamsMinGrade = "S"
)

Defines values for ListPreGameSidesParamsMinGrade.

func (ListPreGameSidesParamsMinGrade) Valid added in v0.4.0

Valid indicates whether the value is a known member of the ListPreGameSidesParamsMinGrade enum.

type ListPreGameSidesParamsXQueryValidation added in v0.4.0

type ListPreGameSidesParamsXQueryValidation string

ListPreGameSidesParamsXQueryValidation defines parameters for ListPreGameSides.

const (
	ListPreGameSidesParamsXQueryValidationStrict ListPreGameSidesParamsXQueryValidation = "strict"
)

Defines values for ListPreGameSidesParamsXQueryValidation.

func (ListPreGameSidesParamsXQueryValidation) Valid added in v0.4.0

Valid indicates whether the value is a known member of the ListPreGameSidesParamsXQueryValidation enum.

type ListPreGameSidesResponse added in v0.4.0

type ListPreGameSidesResponse struct {
	Body         []byte
	HTTPResponse *http.Response
	// JSON200 the response for an HTTP 200 `application/json` response
	JSON200 *struct {
		Data       []PreGameSide                             `json:"data"`
		HasMore    bool                                      `json:"has_more"`
		Meta       ResponseMeta                              `json:"meta"`
		NextCursor *string                                   `json:"next_cursor,omitempty"`
		Object     ListPreGameSides200JSONResponseBodyObject `json:"object"`
		Total      *int                                      `json:"total,omitempty"`
	}
	// JSON400 the response for an HTTP 400 `application/json` response
	JSON400 *ApiError
	// JSON401 the response for an HTTP 401 `application/json` response
	JSON401 *ApiError
	// JSON402 the response for an HTTP 402 `application/json` response
	JSON402 *ApiError
	// JSON403 the response for an HTTP 403 `application/json` response
	JSON403 *ApiError
	// JSON408 the response for an HTTP 408 `application/json` response
	JSON408 *ApiError
	// JSON423 the response for an HTTP 423 `application/json` response
	JSON423 *ApiError
	// JSON429 the response for an HTTP 429 `application/json` response
	JSON429 *ApiError
	// JSON500 the response for an HTTP 500 `application/json` response
	JSON500 *ApiError
	// JSON503 the response for an HTTP 503 `application/json` response
	JSON503 *ApiError
	// Headers200 the parsed response headers for an HTTP 200 response
	Headers200 *ListPreGameSidesResponse200Headers
	// Headers304 the parsed response headers for an HTTP 304 response
	Headers304 *ListPreGameSidesResponse304Headers
	// Headers429 the parsed response headers for an HTTP 429 response
	Headers429 *ListPreGameSidesResponse429Headers
	// Headers503 the parsed response headers for an HTTP 503 response
	Headers503 *ListPreGameSidesResponse503Headers
}

func ParseListPreGameSidesResponse added in v0.4.0

func ParseListPreGameSidesResponse(rsp *http.Response) (*ListPreGameSidesResponse, error)

ParseListPreGameSidesResponse parses an HTTP response from a ListPreGameSidesWithResponse call

func (ListPreGameSidesResponse) ContentType added in v0.4.0

func (r ListPreGameSidesResponse) ContentType() string

ContentType is a convenience method to retrieve the Content-Type value from the HTTP response headers

func (ListPreGameSidesResponse) GetBody added in v0.4.0

func (r ListPreGameSidesResponse) GetBody() []byte

GetBody returns the raw response body bytes

func (ListPreGameSidesResponse) GetJSON200 added in v0.4.0

func (r ListPreGameSidesResponse) GetJSON200() *struct {
	Data       []PreGameSide                             `json:"data"`
	HasMore    bool                                      `json:"has_more"`
	Meta       ResponseMeta                              `json:"meta"`
	NextCursor *string                                   `json:"next_cursor,omitempty"`
	Object     ListPreGameSides200JSONResponseBodyObject `json:"object"`
	Total      *int                                      `json:"total,omitempty"`
}

GetJSON200 returns the response for an HTTP 200 `application/json` response

func (ListPreGameSidesResponse) GetJSON400 added in v0.4.0

func (r ListPreGameSidesResponse) GetJSON400() *ApiError

GetJSON400 returns the response for an HTTP 400 `application/json` response

func (ListPreGameSidesResponse) GetJSON401 added in v0.4.0

func (r ListPreGameSidesResponse) GetJSON401() *ApiError

GetJSON401 returns the response for an HTTP 401 `application/json` response

func (ListPreGameSidesResponse) GetJSON402 added in v0.4.0

func (r ListPreGameSidesResponse) GetJSON402() *ApiError

GetJSON402 returns the response for an HTTP 402 `application/json` response

func (ListPreGameSidesResponse) GetJSON403 added in v0.4.0

func (r ListPreGameSidesResponse) GetJSON403() *ApiError

GetJSON403 returns the response for an HTTP 403 `application/json` response

func (ListPreGameSidesResponse) GetJSON408 added in v0.4.0

func (r ListPreGameSidesResponse) GetJSON408() *ApiError

GetJSON408 returns the response for an HTTP 408 `application/json` response

func (ListPreGameSidesResponse) GetJSON423 added in v0.4.0

func (r ListPreGameSidesResponse) GetJSON423() *ApiError

GetJSON423 returns the response for an HTTP 423 `application/json` response

func (ListPreGameSidesResponse) GetJSON429 added in v0.4.0

func (r ListPreGameSidesResponse) GetJSON429() *ApiError

GetJSON429 returns the response for an HTTP 429 `application/json` response

func (ListPreGameSidesResponse) GetJSON500 added in v0.4.0

func (r ListPreGameSidesResponse) GetJSON500() *ApiError

GetJSON500 returns the response for an HTTP 500 `application/json` response

func (ListPreGameSidesResponse) GetJSON503 added in v0.4.0

func (r ListPreGameSidesResponse) GetJSON503() *ApiError

GetJSON503 returns the response for an HTTP 503 `application/json` response

func (ListPreGameSidesResponse) Status added in v0.4.0

func (r ListPreGameSidesResponse) Status() string

Status returns HTTPResponse.Status

func (ListPreGameSidesResponse) StatusCode added in v0.4.0

func (r ListPreGameSidesResponse) StatusCode() int

StatusCode returns HTTPResponse.StatusCode

type ListPreGameSidesResponse200Headers added in v0.4.0

type ListPreGameSidesResponse200Headers struct {
	ETag                *string
	RateLimitLimit      *int
	RateLimitRemaining  *int
	RateLimitReset      *int
	ServerTiming        *string
	XEffectiveQuery     *string
	XQueryIgnored       *string
	XRateLimitLimit     *int
	XRateLimitRemaining *int
	XRateLimitReset     *int
	XRequestId          *string
	XUsageAccounting    *string
}

ListPreGameSidesResponse200Headers the declared response headers of an HTTP 200 response for ListPreGameSides

type ListPreGameSidesResponse304Headers added in v0.4.0

type ListPreGameSidesResponse304Headers struct {
	ETag                *string
	RateLimitLimit      *int
	RateLimitRemaining  *int
	RateLimitReset      *int
	ServerTiming        *string
	XEffectiveQuery     *string
	XQueryIgnored       *string
	XRateLimitLimit     *int
	XRateLimitRemaining *int
	XRateLimitReset     *int
	XRequestId          *string
	XUsageAccounting    *string
}

ListPreGameSidesResponse304Headers the declared response headers of an HTTP 304 response for ListPreGameSides

type ListPreGameSidesResponse429Headers added in v0.4.0

type ListPreGameSidesResponse429Headers struct {
	RateLimitLimit      *int
	RateLimitRemaining  *int
	RateLimitReset      *int
	RetryAfter          *int
	XRateLimitLimit     *int
	XRateLimitRemaining *int
	XRateLimitReset     *int
	XRequestId          *string
}

ListPreGameSidesResponse429Headers the declared response headers of an HTTP 429 response for ListPreGameSides

type ListPreGameSidesResponse503Headers added in v0.4.0

type ListPreGameSidesResponse503Headers struct {
	RetryAfter *int
	XRequestId *string
}

ListPreGameSidesResponse503Headers the declared response headers of an HTTP 503 response for ListPreGameSides

type ListSharpMoneyFlows200JSONResponseBodyObject

type ListSharpMoneyFlows200JSONResponseBodyObject string

ListSharpMoneyFlows200JSONResponseBodyObject defines parameters for ListSharpMoneyFlows.

const (
	ListSharpMoneyFlows200JSONResponseBodyObjectList ListSharpMoneyFlows200JSONResponseBodyObject = "list"
)

Defines values for ListSharpMoneyFlows200JSONResponseBodyObject.

func (ListSharpMoneyFlows200JSONResponseBodyObject) Valid

Valid indicates whether the value is a known member of the ListSharpMoneyFlows200JSONResponseBodyObject enum.

type ListSharpMoneyFlowsParams

type ListSharpMoneyFlowsParams struct {
	// Timeframe Lookback window for grade-filtered whale flow aggregation.
	Timeframe *ListSharpMoneyFlowsParamsTimeframe `form:"timeframe,omitempty" json:"timeframe,omitempty"`

	// Limit Page size. Out-of-range values are clamped to 1..100.
	Limit *int `form:"limit,omitempty" json:"limit,omitempty"`

	// Cursor Opaque cursor from previous response's next_cursor. Encodes the first-page as_of timestamp, normalized effective filters, ranking and aggregate collection revisions, plus the last row's absolute net flow and condition_id. A changed filter or collection returns cursor_expired; request the first page again.
	Cursor *string `form:"cursor,omitempty" json:"cursor,omitempty"`

	// Category Filter by market category (case-insensitive). A canonical bucket name (e.g. Basketball) matches every provider member that folds into it (NBA, WNBA, NCAAB); a raw provider value also resolves to its bucket.
	Category *string `form:"category,omitempty" json:"category,omitempty"`

	// Platform Filter by source platform. all is a request-side no-op.
	Platform *ListSharpMoneyFlowsParamsPlatform `form:"platform,omitempty" json:"platform,omitempty"`

	// MinGrade Minimum latest trader grade included in the flow. Default B means S/A/B only; unranked traders are excluded.
	MinGrade *ListSharpMoneyFlowsParamsMinGrade `form:"min_grade,omitempty" json:"min_grade,omitempty"`

	// Direction Optional post-aggregate flow direction filter.
	Direction *ListSharpMoneyFlowsParamsDirection `form:"direction,omitempty" json:"direction,omitempty"`

	// XQueryValidation Opt into strict query-name validation. The default is compatible: unknown names are ignored and reported in X-Query-Ignored. With strict, an unknown name returns 400 bad_request with error.reason unknown_query_parameter before the handler runs, including when its percent escape is incomplete.
	XQueryValidation *ListSharpMoneyFlowsParamsXQueryValidation `json:"X-Query-Validation,omitempty"`

	// IfNoneMatch Conditional GET validator from a previous ETag. Matching values return 304 Not Modified with an empty body.
	IfNoneMatch *string `json:"If-None-Match,omitempty"`
}

ListSharpMoneyFlowsParams defines parameters for ListSharpMoneyFlows.

type ListSharpMoneyFlowsParamsDirection

type ListSharpMoneyFlowsParamsDirection string

ListSharpMoneyFlowsParamsDirection defines parameters for ListSharpMoneyFlows.

const (
	ListSharpMoneyFlowsParamsDirectionNO  ListSharpMoneyFlowsParamsDirection = "NO"
	ListSharpMoneyFlowsParamsDirectionYES ListSharpMoneyFlowsParamsDirection = "YES"
)

Defines values for ListSharpMoneyFlowsParamsDirection.

func (ListSharpMoneyFlowsParamsDirection) Valid

Valid indicates whether the value is a known member of the ListSharpMoneyFlowsParamsDirection enum.

type ListSharpMoneyFlowsParamsMinGrade

type ListSharpMoneyFlowsParamsMinGrade string

ListSharpMoneyFlowsParamsMinGrade defines parameters for ListSharpMoneyFlows.

const (
	ListSharpMoneyFlowsParamsMinGradeA ListSharpMoneyFlowsParamsMinGrade = "A"
	ListSharpMoneyFlowsParamsMinGradeB ListSharpMoneyFlowsParamsMinGrade = "B"
	ListSharpMoneyFlowsParamsMinGradeC ListSharpMoneyFlowsParamsMinGrade = "C"
	ListSharpMoneyFlowsParamsMinGradeD ListSharpMoneyFlowsParamsMinGrade = "D"
	ListSharpMoneyFlowsParamsMinGradeF ListSharpMoneyFlowsParamsMinGrade = "F"
	ListSharpMoneyFlowsParamsMinGradeS ListSharpMoneyFlowsParamsMinGrade = "S"
)

Defines values for ListSharpMoneyFlowsParamsMinGrade.

func (ListSharpMoneyFlowsParamsMinGrade) Valid

Valid indicates whether the value is a known member of the ListSharpMoneyFlowsParamsMinGrade enum.

type ListSharpMoneyFlowsParamsPlatform

type ListSharpMoneyFlowsParamsPlatform string

ListSharpMoneyFlowsParamsPlatform defines parameters for ListSharpMoneyFlows.

const (
	ListSharpMoneyFlowsParamsPlatformAll        ListSharpMoneyFlowsParamsPlatform = "all"
	ListSharpMoneyFlowsParamsPlatformPolymarket ListSharpMoneyFlowsParamsPlatform = "polymarket"
)

Defines values for ListSharpMoneyFlowsParamsPlatform.

func (ListSharpMoneyFlowsParamsPlatform) Valid

Valid indicates whether the value is a known member of the ListSharpMoneyFlowsParamsPlatform enum.

type ListSharpMoneyFlowsParamsTimeframe

type ListSharpMoneyFlowsParamsTimeframe string

ListSharpMoneyFlowsParamsTimeframe defines parameters for ListSharpMoneyFlows.

const (
	ListSharpMoneyFlowsParamsTimeframeN1h  ListSharpMoneyFlowsParamsTimeframe = "1h"
	ListSharpMoneyFlowsParamsTimeframeN24h ListSharpMoneyFlowsParamsTimeframe = "24h"
	ListSharpMoneyFlowsParamsTimeframeN4h  ListSharpMoneyFlowsParamsTimeframe = "4h"
	ListSharpMoneyFlowsParamsTimeframeN7d  ListSharpMoneyFlowsParamsTimeframe = "7d"
)

Defines values for ListSharpMoneyFlowsParamsTimeframe.

func (ListSharpMoneyFlowsParamsTimeframe) Valid

Valid indicates whether the value is a known member of the ListSharpMoneyFlowsParamsTimeframe enum.

type ListSharpMoneyFlowsParamsXQueryValidation added in v0.3.0

type ListSharpMoneyFlowsParamsXQueryValidation string

ListSharpMoneyFlowsParamsXQueryValidation defines parameters for ListSharpMoneyFlows.

const (
	ListSharpMoneyFlowsParamsXQueryValidationStrict ListSharpMoneyFlowsParamsXQueryValidation = "strict"
)

Defines values for ListSharpMoneyFlowsParamsXQueryValidation.

func (ListSharpMoneyFlowsParamsXQueryValidation) Valid added in v0.3.0

Valid indicates whether the value is a known member of the ListSharpMoneyFlowsParamsXQueryValidation enum.

type ListSharpMoneyFlowsResponse

type ListSharpMoneyFlowsResponse struct {
	Body         []byte
	HTTPResponse *http.Response
	// JSON200 the response for an HTTP 200 `application/json` response
	JSON200 *struct {
		Data       []SmartMoneyFlowMarket                       `json:"data"`
		HasMore    bool                                         `json:"has_more"`
		Meta       ResponseMeta                                 `json:"meta"`
		NextCursor *string                                      `json:"next_cursor,omitempty"`
		Object     ListSharpMoneyFlows200JSONResponseBodyObject `json:"object"`
		Total      *int                                         `json:"total,omitempty"`
	}
	// JSON400 the response for an HTTP 400 `application/json` response
	JSON400 *ApiError
	// JSON401 the response for an HTTP 401 `application/json` response
	JSON401 *ApiError
	// JSON402 the response for an HTTP 402 `application/json` response
	JSON402 *ApiError
	// JSON403 the response for an HTTP 403 `application/json` response
	JSON403 *ApiError
	// JSON408 the response for an HTTP 408 `application/json` response
	JSON408 *ApiError
	// JSON423 the response for an HTTP 423 `application/json` response
	JSON423 *ApiError
	// JSON429 the response for an HTTP 429 `application/json` response
	JSON429 *ApiError
	// JSON500 the response for an HTTP 500 `application/json` response
	JSON500 *ApiError
	// JSON503 the response for an HTTP 503 `application/json` response
	JSON503 *ApiError
	// Headers200 the parsed response headers for an HTTP 200 response
	Headers200 *ListSharpMoneyFlowsResponse200Headers
	// Headers304 the parsed response headers for an HTTP 304 response
	Headers304 *ListSharpMoneyFlowsResponse304Headers
	// Headers429 the parsed response headers for an HTTP 429 response
	Headers429 *ListSharpMoneyFlowsResponse429Headers
	// Headers503 the parsed response headers for an HTTP 503 response
	Headers503 *ListSharpMoneyFlowsResponse503Headers
}

func ParseListSharpMoneyFlowsResponse

func ParseListSharpMoneyFlowsResponse(rsp *http.Response) (*ListSharpMoneyFlowsResponse, error)

ParseListSharpMoneyFlowsResponse parses an HTTP response from a ListSharpMoneyFlowsWithResponse call

func (ListSharpMoneyFlowsResponse) ContentType

func (r ListSharpMoneyFlowsResponse) ContentType() string

ContentType is a convenience method to retrieve the Content-Type value from the HTTP response headers

func (ListSharpMoneyFlowsResponse) GetBody

func (r ListSharpMoneyFlowsResponse) GetBody() []byte

GetBody returns the raw response body bytes

func (ListSharpMoneyFlowsResponse) GetJSON200

func (r ListSharpMoneyFlowsResponse) GetJSON200() *struct {
	Data       []SmartMoneyFlowMarket                       `json:"data"`
	HasMore    bool                                         `json:"has_more"`
	Meta       ResponseMeta                                 `json:"meta"`
	NextCursor *string                                      `json:"next_cursor,omitempty"`
	Object     ListSharpMoneyFlows200JSONResponseBodyObject `json:"object"`
	Total      *int                                         `json:"total,omitempty"`
}

GetJSON200 returns the response for an HTTP 200 `application/json` response

func (ListSharpMoneyFlowsResponse) GetJSON400

func (r ListSharpMoneyFlowsResponse) GetJSON400() *ApiError

GetJSON400 returns the response for an HTTP 400 `application/json` response

func (ListSharpMoneyFlowsResponse) GetJSON401

func (r ListSharpMoneyFlowsResponse) GetJSON401() *ApiError

GetJSON401 returns the response for an HTTP 401 `application/json` response

func (ListSharpMoneyFlowsResponse) GetJSON402

func (r ListSharpMoneyFlowsResponse) GetJSON402() *ApiError

GetJSON402 returns the response for an HTTP 402 `application/json` response

func (ListSharpMoneyFlowsResponse) GetJSON403

func (r ListSharpMoneyFlowsResponse) GetJSON403() *ApiError

GetJSON403 returns the response for an HTTP 403 `application/json` response

func (ListSharpMoneyFlowsResponse) GetJSON408 added in v0.2.0

func (r ListSharpMoneyFlowsResponse) GetJSON408() *ApiError

GetJSON408 returns the response for an HTTP 408 `application/json` response

func (ListSharpMoneyFlowsResponse) GetJSON423

func (r ListSharpMoneyFlowsResponse) GetJSON423() *ApiError

GetJSON423 returns the response for an HTTP 423 `application/json` response

func (ListSharpMoneyFlowsResponse) GetJSON429

func (r ListSharpMoneyFlowsResponse) GetJSON429() *ApiError

GetJSON429 returns the response for an HTTP 429 `application/json` response

func (ListSharpMoneyFlowsResponse) GetJSON500 added in v0.4.0

func (r ListSharpMoneyFlowsResponse) GetJSON500() *ApiError

GetJSON500 returns the response for an HTTP 500 `application/json` response

func (ListSharpMoneyFlowsResponse) GetJSON503

func (r ListSharpMoneyFlowsResponse) GetJSON503() *ApiError

GetJSON503 returns the response for an HTTP 503 `application/json` response

func (ListSharpMoneyFlowsResponse) Status

Status returns HTTPResponse.Status

func (ListSharpMoneyFlowsResponse) StatusCode

func (r ListSharpMoneyFlowsResponse) StatusCode() int

StatusCode returns HTTPResponse.StatusCode

type ListSharpMoneyFlowsResponse200Headers

type ListSharpMoneyFlowsResponse200Headers struct {
	ETag                *string
	RateLimitLimit      *int
	RateLimitRemaining  *int
	RateLimitReset      *int
	ServerTiming        *string
	XEffectiveQuery     *string
	XQueryIgnored       *string
	XRateLimitLimit     *int
	XRateLimitRemaining *int
	XRateLimitReset     *int
	XRequestId          *string
	XUsageAccounting    *string
}

ListSharpMoneyFlowsResponse200Headers the declared response headers of an HTTP 200 response for ListSharpMoneyFlows

type ListSharpMoneyFlowsResponse304Headers

type ListSharpMoneyFlowsResponse304Headers struct {
	ETag                *string
	RateLimitLimit      *int
	RateLimitRemaining  *int
	RateLimitReset      *int
	ServerTiming        *string
	XEffectiveQuery     *string
	XQueryIgnored       *string
	XRateLimitLimit     *int
	XRateLimitRemaining *int
	XRateLimitReset     *int
	XRequestId          *string
	XUsageAccounting    *string
}

ListSharpMoneyFlowsResponse304Headers the declared response headers of an HTTP 304 response for ListSharpMoneyFlows

type ListSharpMoneyFlowsResponse429Headers

type ListSharpMoneyFlowsResponse429Headers struct {
	RateLimitLimit      *int
	RateLimitRemaining  *int
	RateLimitReset      *int
	RetryAfter          *int
	XRateLimitLimit     *int
	XRateLimitRemaining *int
	XRateLimitReset     *int
	XRequestId          *string
}

ListSharpMoneyFlowsResponse429Headers the declared response headers of an HTTP 429 response for ListSharpMoneyFlows

type ListSharpMoneyFlowsResponse503Headers

type ListSharpMoneyFlowsResponse503Headers struct {
	RetryAfter *int
	XRequestId *string
}

ListSharpMoneyFlowsResponse503Headers the declared response headers of an HTTP 503 response for ListSharpMoneyFlows

type ListSmartMoneyFlows200JSONResponseBodyObject

type ListSmartMoneyFlows200JSONResponseBodyObject string

ListSmartMoneyFlows200JSONResponseBodyObject defines parameters for ListSmartMoneyFlows.

const (
	ListSmartMoneyFlows200JSONResponseBodyObjectList ListSmartMoneyFlows200JSONResponseBodyObject = "list"
)

Defines values for ListSmartMoneyFlows200JSONResponseBodyObject.

func (ListSmartMoneyFlows200JSONResponseBodyObject) Valid

Valid indicates whether the value is a known member of the ListSmartMoneyFlows200JSONResponseBodyObject enum.

type ListSmartMoneyFlowsParams

type ListSmartMoneyFlowsParams struct {
	// Timeframe Lookback window for grade-filtered whale flow aggregation.
	Timeframe *ListSmartMoneyFlowsParamsTimeframe `form:"timeframe,omitempty" json:"timeframe,omitempty"`

	// Limit Page size. Out-of-range values are clamped to 1..100.
	Limit *int `form:"limit,omitempty" json:"limit,omitempty"`

	// Cursor Opaque cursor from previous response's next_cursor. Encodes the first-page as_of timestamp, normalized effective filters, ranking and aggregate collection revisions, plus the last row's absolute net flow and condition_id. A changed filter or collection returns cursor_expired; request the first page again.
	Cursor *string `form:"cursor,omitempty" json:"cursor,omitempty"`

	// Category Filter by market category (case-insensitive). A canonical bucket name (e.g. Basketball) matches every provider member that folds into it (NBA, WNBA, NCAAB); a raw provider value also resolves to its bucket.
	Category *string `form:"category,omitempty" json:"category,omitempty"`

	// Platform Filter by source platform. all is a request-side no-op.
	Platform *ListSmartMoneyFlowsParamsPlatform `form:"platform,omitempty" json:"platform,omitempty"`

	// MinGrade Minimum latest trader grade included in the flow. Default B means S/A/B only; unranked traders are excluded.
	MinGrade *ListSmartMoneyFlowsParamsMinGrade `form:"min_grade,omitempty" json:"min_grade,omitempty"`

	// Direction Optional post-aggregate flow direction filter.
	Direction *ListSmartMoneyFlowsParamsDirection `form:"direction,omitempty" json:"direction,omitempty"`

	// XQueryValidation Opt into strict query-name validation. The default is compatible: unknown names are ignored and reported in X-Query-Ignored. With strict, an unknown name returns 400 bad_request with error.reason unknown_query_parameter before the handler runs, including when its percent escape is incomplete.
	XQueryValidation *ListSmartMoneyFlowsParamsXQueryValidation `json:"X-Query-Validation,omitempty"`

	// IfNoneMatch Conditional GET validator from a previous ETag. Matching values return 304 Not Modified with an empty body.
	IfNoneMatch *string `json:"If-None-Match,omitempty"`
}

ListSmartMoneyFlowsParams defines parameters for ListSmartMoneyFlows.

type ListSmartMoneyFlowsParamsDirection

type ListSmartMoneyFlowsParamsDirection string

ListSmartMoneyFlowsParamsDirection defines parameters for ListSmartMoneyFlows.

const (
	ListSmartMoneyFlowsParamsDirectionNO  ListSmartMoneyFlowsParamsDirection = "NO"
	ListSmartMoneyFlowsParamsDirectionYES ListSmartMoneyFlowsParamsDirection = "YES"
)

Defines values for ListSmartMoneyFlowsParamsDirection.

func (ListSmartMoneyFlowsParamsDirection) Valid

Valid indicates whether the value is a known member of the ListSmartMoneyFlowsParamsDirection enum.

type ListSmartMoneyFlowsParamsMinGrade

type ListSmartMoneyFlowsParamsMinGrade string

ListSmartMoneyFlowsParamsMinGrade defines parameters for ListSmartMoneyFlows.

const (
	ListSmartMoneyFlowsParamsMinGradeA ListSmartMoneyFlowsParamsMinGrade = "A"
	ListSmartMoneyFlowsParamsMinGradeB ListSmartMoneyFlowsParamsMinGrade = "B"
	ListSmartMoneyFlowsParamsMinGradeC ListSmartMoneyFlowsParamsMinGrade = "C"
	ListSmartMoneyFlowsParamsMinGradeD ListSmartMoneyFlowsParamsMinGrade = "D"
	ListSmartMoneyFlowsParamsMinGradeF ListSmartMoneyFlowsParamsMinGrade = "F"
	ListSmartMoneyFlowsParamsMinGradeS ListSmartMoneyFlowsParamsMinGrade = "S"
)

Defines values for ListSmartMoneyFlowsParamsMinGrade.

func (ListSmartMoneyFlowsParamsMinGrade) Valid

Valid indicates whether the value is a known member of the ListSmartMoneyFlowsParamsMinGrade enum.

type ListSmartMoneyFlowsParamsPlatform

type ListSmartMoneyFlowsParamsPlatform string

ListSmartMoneyFlowsParamsPlatform defines parameters for ListSmartMoneyFlows.

const (
	ListSmartMoneyFlowsParamsPlatformAll        ListSmartMoneyFlowsParamsPlatform = "all"
	ListSmartMoneyFlowsParamsPlatformPolymarket ListSmartMoneyFlowsParamsPlatform = "polymarket"
)

Defines values for ListSmartMoneyFlowsParamsPlatform.

func (ListSmartMoneyFlowsParamsPlatform) Valid

Valid indicates whether the value is a known member of the ListSmartMoneyFlowsParamsPlatform enum.

type ListSmartMoneyFlowsParamsTimeframe

type ListSmartMoneyFlowsParamsTimeframe string

ListSmartMoneyFlowsParamsTimeframe defines parameters for ListSmartMoneyFlows.

const (
	ListSmartMoneyFlowsParamsTimeframeN1h  ListSmartMoneyFlowsParamsTimeframe = "1h"
	ListSmartMoneyFlowsParamsTimeframeN24h ListSmartMoneyFlowsParamsTimeframe = "24h"
	ListSmartMoneyFlowsParamsTimeframeN4h  ListSmartMoneyFlowsParamsTimeframe = "4h"
	ListSmartMoneyFlowsParamsTimeframeN7d  ListSmartMoneyFlowsParamsTimeframe = "7d"
)

Defines values for ListSmartMoneyFlowsParamsTimeframe.

func (ListSmartMoneyFlowsParamsTimeframe) Valid

Valid indicates whether the value is a known member of the ListSmartMoneyFlowsParamsTimeframe enum.

type ListSmartMoneyFlowsParamsXQueryValidation added in v0.3.0

type ListSmartMoneyFlowsParamsXQueryValidation string

ListSmartMoneyFlowsParamsXQueryValidation defines parameters for ListSmartMoneyFlows.

const (
	ListSmartMoneyFlowsParamsXQueryValidationStrict ListSmartMoneyFlowsParamsXQueryValidation = "strict"
)

Defines values for ListSmartMoneyFlowsParamsXQueryValidation.

func (ListSmartMoneyFlowsParamsXQueryValidation) Valid added in v0.3.0

Valid indicates whether the value is a known member of the ListSmartMoneyFlowsParamsXQueryValidation enum.

type ListSmartMoneyFlowsResponse

type ListSmartMoneyFlowsResponse struct {
	Body         []byte
	HTTPResponse *http.Response
	// JSON200 the response for an HTTP 200 `application/json` response
	JSON200 *struct {
		Data       []SmartMoneyFlowMarket                       `json:"data"`
		HasMore    bool                                         `json:"has_more"`
		Meta       ResponseMeta                                 `json:"meta"`
		NextCursor *string                                      `json:"next_cursor,omitempty"`
		Object     ListSmartMoneyFlows200JSONResponseBodyObject `json:"object"`
		Total      *int                                         `json:"total,omitempty"`
	}
	// JSON400 the response for an HTTP 400 `application/json` response
	JSON400 *ApiError
	// JSON401 the response for an HTTP 401 `application/json` response
	JSON401 *ApiError
	// JSON402 the response for an HTTP 402 `application/json` response
	JSON402 *ApiError
	// JSON403 the response for an HTTP 403 `application/json` response
	JSON403 *ApiError
	// JSON408 the response for an HTTP 408 `application/json` response
	JSON408 *ApiError
	// JSON423 the response for an HTTP 423 `application/json` response
	JSON423 *ApiError
	// JSON429 the response for an HTTP 429 `application/json` response
	JSON429 *ApiError
	// JSON500 the response for an HTTP 500 `application/json` response
	JSON500 *ApiError
	// JSON503 the response for an HTTP 503 `application/json` response
	JSON503 *ApiError
	// Headers200 the parsed response headers for an HTTP 200 response
	Headers200 *ListSmartMoneyFlowsResponse200Headers
	// Headers304 the parsed response headers for an HTTP 304 response
	Headers304 *ListSmartMoneyFlowsResponse304Headers
	// Headers429 the parsed response headers for an HTTP 429 response
	Headers429 *ListSmartMoneyFlowsResponse429Headers
	// Headers503 the parsed response headers for an HTTP 503 response
	Headers503 *ListSmartMoneyFlowsResponse503Headers
}

func ParseListSmartMoneyFlowsResponse

func ParseListSmartMoneyFlowsResponse(rsp *http.Response) (*ListSmartMoneyFlowsResponse, error)

ParseListSmartMoneyFlowsResponse parses an HTTP response from a ListSmartMoneyFlowsWithResponse call

func (ListSmartMoneyFlowsResponse) ContentType

func (r ListSmartMoneyFlowsResponse) ContentType() string

ContentType is a convenience method to retrieve the Content-Type value from the HTTP response headers

func (ListSmartMoneyFlowsResponse) GetBody

func (r ListSmartMoneyFlowsResponse) GetBody() []byte

GetBody returns the raw response body bytes

func (ListSmartMoneyFlowsResponse) GetJSON200

func (r ListSmartMoneyFlowsResponse) GetJSON200() *struct {
	Data       []SmartMoneyFlowMarket                       `json:"data"`
	HasMore    bool                                         `json:"has_more"`
	Meta       ResponseMeta                                 `json:"meta"`
	NextCursor *string                                      `json:"next_cursor,omitempty"`
	Object     ListSmartMoneyFlows200JSONResponseBodyObject `json:"object"`
	Total      *int                                         `json:"total,omitempty"`
}

GetJSON200 returns the response for an HTTP 200 `application/json` response

func (ListSmartMoneyFlowsResponse) GetJSON400

func (r ListSmartMoneyFlowsResponse) GetJSON400() *ApiError

GetJSON400 returns the response for an HTTP 400 `application/json` response

func (ListSmartMoneyFlowsResponse) GetJSON401

func (r ListSmartMoneyFlowsResponse) GetJSON401() *ApiError

GetJSON401 returns the response for an HTTP 401 `application/json` response

func (ListSmartMoneyFlowsResponse) GetJSON402

func (r ListSmartMoneyFlowsResponse) GetJSON402() *ApiError

GetJSON402 returns the response for an HTTP 402 `application/json` response

func (ListSmartMoneyFlowsResponse) GetJSON403

func (r ListSmartMoneyFlowsResponse) GetJSON403() *ApiError

GetJSON403 returns the response for an HTTP 403 `application/json` response

func (ListSmartMoneyFlowsResponse) GetJSON408 added in v0.2.0

func (r ListSmartMoneyFlowsResponse) GetJSON408() *ApiError

GetJSON408 returns the response for an HTTP 408 `application/json` response

func (ListSmartMoneyFlowsResponse) GetJSON423

func (r ListSmartMoneyFlowsResponse) GetJSON423() *ApiError

GetJSON423 returns the response for an HTTP 423 `application/json` response

func (ListSmartMoneyFlowsResponse) GetJSON429

func (r ListSmartMoneyFlowsResponse) GetJSON429() *ApiError

GetJSON429 returns the response for an HTTP 429 `application/json` response

func (ListSmartMoneyFlowsResponse) GetJSON500 added in v0.4.0

func (r ListSmartMoneyFlowsResponse) GetJSON500() *ApiError

GetJSON500 returns the response for an HTTP 500 `application/json` response

func (ListSmartMoneyFlowsResponse) GetJSON503

func (r ListSmartMoneyFlowsResponse) GetJSON503() *ApiError

GetJSON503 returns the response for an HTTP 503 `application/json` response

func (ListSmartMoneyFlowsResponse) Status

Status returns HTTPResponse.Status

func (ListSmartMoneyFlowsResponse) StatusCode

func (r ListSmartMoneyFlowsResponse) StatusCode() int

StatusCode returns HTTPResponse.StatusCode

type ListSmartMoneyFlowsResponse200Headers

type ListSmartMoneyFlowsResponse200Headers struct {
	Deprecation         *string
	ETag                *string
	Link                *string
	RateLimitLimit      *int
	RateLimitRemaining  *int
	RateLimitReset      *int
	ServerTiming        *string
	XEffectiveQuery     *string
	XQueryIgnored       *string
	XRateLimitLimit     *int
	XRateLimitRemaining *int
	XRateLimitReset     *int
	XRequestId          *string
	XUsageAccounting    *string
}

ListSmartMoneyFlowsResponse200Headers the declared response headers of an HTTP 200 response for ListSmartMoneyFlows

type ListSmartMoneyFlowsResponse304Headers

type ListSmartMoneyFlowsResponse304Headers struct {
	ETag                *string
	RateLimitLimit      *int
	RateLimitRemaining  *int
	RateLimitReset      *int
	ServerTiming        *string
	XEffectiveQuery     *string
	XQueryIgnored       *string
	XRateLimitLimit     *int
	XRateLimitRemaining *int
	XRateLimitReset     *int
	XRequestId          *string
	XUsageAccounting    *string
}

ListSmartMoneyFlowsResponse304Headers the declared response headers of an HTTP 304 response for ListSmartMoneyFlows

type ListSmartMoneyFlowsResponse429Headers

type ListSmartMoneyFlowsResponse429Headers struct {
	RateLimitLimit      *int
	RateLimitRemaining  *int
	RateLimitReset      *int
	RetryAfter          *int
	XRateLimitLimit     *int
	XRateLimitRemaining *int
	XRateLimitReset     *int
	XRequestId          *string
}

ListSmartMoneyFlowsResponse429Headers the declared response headers of an HTTP 429 response for ListSmartMoneyFlows

type ListSmartMoneyFlowsResponse503Headers

type ListSmartMoneyFlowsResponse503Headers struct {
	RetryAfter *int
	XRequestId *string
}

ListSmartMoneyFlowsResponse503Headers the declared response headers of an HTTP 503 response for ListSmartMoneyFlows

type ListSportsEdgeObservations200JSONResponseBodyObject

type ListSportsEdgeObservations200JSONResponseBodyObject string

ListSportsEdgeObservations200JSONResponseBodyObject defines parameters for ListSportsEdgeObservations.

const (
	ListSportsEdgeObservations200JSONResponseBodyObjectList ListSportsEdgeObservations200JSONResponseBodyObject = "list"
)

Defines values for ListSportsEdgeObservations200JSONResponseBodyObject.

func (ListSportsEdgeObservations200JSONResponseBodyObject) Valid

Valid indicates whether the value is a known member of the ListSportsEdgeObservations200JSONResponseBodyObject enum.

type ListSportsEdgeObservationsParams

type ListSportsEdgeObservationsParams struct {
	// Cohort Observation cohort. wider_holder measures pre-game holder piles outside the funded route's exact raw signals admission. in_play admits only provider-confirmed live games and excludes stale or unavailable provider live-board, holder, or directional evidence. emerging_pile is a post-compute wider_holder projection for finite sharp_pct in [0.75, 0.85) with holder_scan_complete=true and a kickoff after its pinned projection cutoff; it overlaps wider_holder, is not an independent denominator, and is not arrival history.
	Cohort ListSportsEdgeObservationsParamsCohort `form:"cohort" json:"cohort"`

	// Category Optional canonical sport bucket. Omitted or blank selects all registered sports. Raw provider categories resolve through the canonical taxonomy, including table-tennis or table tennis to Table Tennis and pickleball to Pickleball; a non-sport category returns an empty list.
	Category *string `form:"category,omitempty" json:"category,omitempty"`

	// Limit Page size. Out-of-range values are clamped to 1..100.
	Limit *int `form:"limit,omitempty" json:"limit,omitempty"`

	// Cursor Server-authenticated opaque seo_v2_ cursor from next_cursor. Pins snapshot_as_of, cohort, rank, and condition_id; pre-deploy unsigned seo_ cursors are rejected, so clients must request the first page after this contract ships; emerging_pile cursors also pin the first-page projection_now cutoff so kickoff filtering cannot renumber continuation pages. Client edits fail closed; it cannot cross cohorts; a refreshed snapshot invalidates it with 400.
	Cursor *string `form:"cursor,omitempty" json:"cursor,omitempty"`

	// XQueryValidation Opt into strict query-name validation. The default is compatible: unknown names are ignored and reported in X-Query-Ignored. With strict, an unknown name returns 400 bad_request with error.reason unknown_query_parameter before the handler runs, including when its percent escape is incomplete.
	XQueryValidation *ListSportsEdgeObservationsParamsXQueryValidation `json:"X-Query-Validation,omitempty"`

	// IfNoneMatch Conditional GET using a previous weak semantic ETag. Matching stable payloads return 304 Not Modified with an empty body; request-specific meta and the opaque emerging_pile projection cutoff inside next_cursor are excluded from validation.
	IfNoneMatch *string `json:"If-None-Match,omitempty"`
}

ListSportsEdgeObservationsParams defines parameters for ListSportsEdgeObservations.

type ListSportsEdgeObservationsParamsCohort

type ListSportsEdgeObservationsParamsCohort string

ListSportsEdgeObservationsParamsCohort defines parameters for ListSportsEdgeObservations.

const (
	ListSportsEdgeObservationsParamsCohortEmergingPile ListSportsEdgeObservationsParamsCohort = "emerging_pile"
	ListSportsEdgeObservationsParamsCohortInPlay       ListSportsEdgeObservationsParamsCohort = "in_play"
	ListSportsEdgeObservationsParamsCohortWiderHolder  ListSportsEdgeObservationsParamsCohort = "wider_holder"
)

Defines values for ListSportsEdgeObservationsParamsCohort.

func (ListSportsEdgeObservationsParamsCohort) Valid

Valid indicates whether the value is a known member of the ListSportsEdgeObservationsParamsCohort enum.

type ListSportsEdgeObservationsParamsXQueryValidation added in v0.3.0

type ListSportsEdgeObservationsParamsXQueryValidation string

ListSportsEdgeObservationsParamsXQueryValidation defines parameters for ListSportsEdgeObservations.

const (
	ListSportsEdgeObservationsParamsXQueryValidationStrict ListSportsEdgeObservationsParamsXQueryValidation = "strict"
)

Defines values for ListSportsEdgeObservationsParamsXQueryValidation.

func (ListSportsEdgeObservationsParamsXQueryValidation) Valid added in v0.3.0

Valid indicates whether the value is a known member of the ListSportsEdgeObservationsParamsXQueryValidation enum.

type ListSportsEdgeObservationsResponse

type ListSportsEdgeObservationsResponse struct {
	Body         []byte
	HTTPResponse *http.Response
	// JSON200 the response for an HTTP 200 `application/json` response
	JSON200 *struct {
		Data []PreGameSideObservation `json:"data"`

		// Degraded True when an operational failure or unknown provider-board, holder, directional, reconciliation, or internal completeness state made this snapshot partial. This is snapshot-wide and can retain degradation that the funnel's one-terminal-per-input accounting cannot represent. Intentional bounded capacity_limited rows remain fully accounted in the funnel and do not by themselves set this field.
		Degraded bool `json:"degraded"`

		// Funnel Per-sport accountable funnel for the full observation snapshot, returned on every page.
		Funnel  PreGameSideFunnelReport `json:"funnel"`
		HasMore bool                    `json:"has_more"`
		Meta    ResponseMeta            `json:"meta"`

		// NextCursor Pass as cursor for the next page. Always sent; null on the last page.
		NextCursor string                                              `json:"next_cursor"`
		Object     ListSportsEdgeObservations200JSONResponseBodyObject `json:"object"`

		// SnapshotAsOf Completion time of the shared observation snapshot pinned by the cursor.
		SnapshotAsOf time.Time `json:"snapshot_as_of"`
	}
	// JSON400 the response for an HTTP 400 `application/json` response
	JSON400 *ApiError
	// JSON401 the response for an HTTP 401 `application/json` response
	JSON401 *ApiError
	// JSON402 the response for an HTTP 402 `application/json` response
	JSON402 *ApiError
	// JSON403 the response for an HTTP 403 `application/json` response
	JSON403 *ApiError
	// JSON408 the response for an HTTP 408 `application/json` response
	JSON408 *ApiError
	// JSON423 the response for an HTTP 423 `application/json` response
	JSON423 *ApiError
	// JSON429 the response for an HTTP 429 `application/json` response
	JSON429 *ApiError
	// JSON500 the response for an HTTP 500 `application/json` response
	JSON500 *ApiError
	// JSON503 the response for an HTTP 503 `application/json` response
	JSON503 *ApiError
	// Headers200 the parsed response headers for an HTTP 200 response
	Headers200 *ListSportsEdgeObservationsResponse200Headers
	// Headers304 the parsed response headers for an HTTP 304 response
	Headers304 *ListSportsEdgeObservationsResponse304Headers
	// Headers429 the parsed response headers for an HTTP 429 response
	Headers429 *ListSportsEdgeObservationsResponse429Headers
	// Headers503 the parsed response headers for an HTTP 503 response
	Headers503 *ListSportsEdgeObservationsResponse503Headers
}

func ParseListSportsEdgeObservationsResponse

func ParseListSportsEdgeObservationsResponse(rsp *http.Response) (*ListSportsEdgeObservationsResponse, error)

ParseListSportsEdgeObservationsResponse parses an HTTP response from a ListSportsEdgeObservationsWithResponse call

func (ListSportsEdgeObservationsResponse) ContentType

ContentType is a convenience method to retrieve the Content-Type value from the HTTP response headers

func (ListSportsEdgeObservationsResponse) GetBody

GetBody returns the raw response body bytes

func (ListSportsEdgeObservationsResponse) GetJSON200

func (r ListSportsEdgeObservationsResponse) GetJSON200() *struct {
	Data []PreGameSideObservation `json:"data"`

	// Degraded True when an operational failure or unknown provider-board, holder, directional, reconciliation, or internal completeness state made this snapshot partial. This is snapshot-wide and can retain degradation that the funnel's one-terminal-per-input accounting cannot represent. Intentional bounded capacity_limited rows remain fully accounted in the funnel and do not by themselves set this field.
	Degraded bool `json:"degraded"`

	// Funnel Per-sport accountable funnel for the full observation snapshot, returned on every page.
	Funnel  PreGameSideFunnelReport `json:"funnel"`
	HasMore bool                    `json:"has_more"`
	Meta    ResponseMeta            `json:"meta"`

	// NextCursor Pass as cursor for the next page. Always sent; null on the last page.
	NextCursor string                                              `json:"next_cursor"`
	Object     ListSportsEdgeObservations200JSONResponseBodyObject `json:"object"`

	// SnapshotAsOf Completion time of the shared observation snapshot pinned by the cursor.
	SnapshotAsOf time.Time `json:"snapshot_as_of"`
}

GetJSON200 returns the response for an HTTP 200 `application/json` response

func (ListSportsEdgeObservationsResponse) GetJSON400

GetJSON400 returns the response for an HTTP 400 `application/json` response

func (ListSportsEdgeObservationsResponse) GetJSON401

GetJSON401 returns the response for an HTTP 401 `application/json` response

func (ListSportsEdgeObservationsResponse) GetJSON402

GetJSON402 returns the response for an HTTP 402 `application/json` response

func (ListSportsEdgeObservationsResponse) GetJSON403

GetJSON403 returns the response for an HTTP 403 `application/json` response

func (ListSportsEdgeObservationsResponse) GetJSON408 added in v0.2.0

GetJSON408 returns the response for an HTTP 408 `application/json` response

func (ListSportsEdgeObservationsResponse) GetJSON423

GetJSON423 returns the response for an HTTP 423 `application/json` response

func (ListSportsEdgeObservationsResponse) GetJSON429

GetJSON429 returns the response for an HTTP 429 `application/json` response

func (ListSportsEdgeObservationsResponse) GetJSON500

GetJSON500 returns the response for an HTTP 500 `application/json` response

func (ListSportsEdgeObservationsResponse) GetJSON503

GetJSON503 returns the response for an HTTP 503 `application/json` response

func (ListSportsEdgeObservationsResponse) Status

Status returns HTTPResponse.Status

func (ListSportsEdgeObservationsResponse) StatusCode

func (r ListSportsEdgeObservationsResponse) StatusCode() int

StatusCode returns HTTPResponse.StatusCode

type ListSportsEdgeObservationsResponse200Headers

type ListSportsEdgeObservationsResponse200Headers struct {
	CacheControl        *string
	ETag                *string
	RateLimitLimit      *int
	RateLimitRemaining  *int
	RateLimitReset      *int
	ServerTiming        *string
	XEffectiveQuery     *string
	XQueryIgnored       *string
	XRateLimitLimit     *int
	XRateLimitRemaining *int
	XRateLimitReset     *int
	XRequestId          *string
	XUsageAccounting    *string
}

ListSportsEdgeObservationsResponse200Headers the declared response headers of an HTTP 200 response for ListSportsEdgeObservations

type ListSportsEdgeObservationsResponse304Headers

type ListSportsEdgeObservationsResponse304Headers struct {
	CacheControl        *string
	ETag                *string
	RateLimitLimit      *int
	RateLimitRemaining  *int
	RateLimitReset      *int
	ServerTiming        *string
	XEffectiveQuery     *string
	XQueryIgnored       *string
	XRateLimitLimit     *int
	XRateLimitRemaining *int
	XRateLimitReset     *int
	XRequestId          *string
	XUsageAccounting    *string
}

ListSportsEdgeObservationsResponse304Headers the declared response headers of an HTTP 304 response for ListSportsEdgeObservations

type ListSportsEdgeObservationsResponse429Headers

type ListSportsEdgeObservationsResponse429Headers struct {
	RateLimitLimit      *int
	RateLimitRemaining  *int
	RateLimitReset      *int
	RetryAfter          *int
	XRateLimitLimit     *int
	XRateLimitRemaining *int
	XRateLimitReset     *int
	XRequestId          *string
}

ListSportsEdgeObservationsResponse429Headers the declared response headers of an HTTP 429 response for ListSportsEdgeObservations

type ListSportsEdgeObservationsResponse503Headers

type ListSportsEdgeObservationsResponse503Headers struct {
	RetryAfter *int
	XRequestId *string
}

ListSportsEdgeObservationsResponse503Headers the declared response headers of an HTTP 503 response for ListSportsEdgeObservations

type ListSportsEdgeSignals200JSONResponseBodyObject

type ListSportsEdgeSignals200JSONResponseBodyObject string

ListSportsEdgeSignals200JSONResponseBodyObject defines parameters for ListSportsEdgeSignals.

const (
	ListSportsEdgeSignals200JSONResponseBodyObjectList ListSportsEdgeSignals200JSONResponseBodyObject = "list"
)

Defines values for ListSportsEdgeSignals200JSONResponseBodyObject.

func (ListSportsEdgeSignals200JSONResponseBodyObject) Valid

Valid indicates whether the value is a known member of the ListSportsEdgeSignals200JSONResponseBodyObject enum.

type ListSportsEdgeSignalsParams

type ListSportsEdgeSignalsParams struct {
	// Category Optional canonical sport bucket filter (e.g. Basketball, Tennis, Soccer). A raw provider value (NBA) resolves to its canonical bucket. A non-sport category returns an empty list.
	Category *string `form:"category,omitempty" json:"category,omitempty"`

	// Limit Page size. Out-of-range values are clamped to 1..100.
	Limit *int `form:"limit,omitempty" json:"limit,omitempty"`

	// Cursor Opaque cursor from a previous response's next_cursor. Encodes the snapshot anchor plus the last row's directional_rank_score, conviction_score, smart_score and condition_id. A cursor from an expired snapshot returns 400.
	Cursor *string `form:"cursor,omitempty" json:"cursor,omitempty"`

	// HorizonHours Kickoff ceiling in hours from now; the floor is now (only games not yet started). Clamped to 1..48.
	HorizonHours *int `form:"horizon_hours,omitempty" json:"horizon_hours,omitempty"`

	// MinGrade Minimum trader grade required on the piled side. Only S, A, B are accepted (the piled-side grade distribution is S/A/B only; C, D, F return 400). Default B means at least one S/A/B holder is piled; S requires an S holder, A requires an S or A holder.
	MinGrade *ListSportsEdgeSignalsParamsMinGrade `form:"min_grade,omitempty" json:"min_grade,omitempty"`

	// XQueryValidation Opt into strict query-name validation. The default is compatible: unknown names are ignored and reported in X-Query-Ignored. With strict, an unknown name returns 400 bad_request with error.reason unknown_query_parameter before the handler runs, including when its percent escape is incomplete.
	XQueryValidation *ListSportsEdgeSignalsParamsXQueryValidation `json:"X-Query-Validation,omitempty"`

	// IfNoneMatch Conditional GET validator from a previous ETag. Matching values return 304 Not Modified with an empty body.
	IfNoneMatch *string `json:"If-None-Match,omitempty"`
}

ListSportsEdgeSignalsParams defines parameters for ListSportsEdgeSignals.

type ListSportsEdgeSignalsParamsMinGrade

type ListSportsEdgeSignalsParamsMinGrade string

ListSportsEdgeSignalsParamsMinGrade defines parameters for ListSportsEdgeSignals.

const (
	ListSportsEdgeSignalsParamsMinGradeA ListSportsEdgeSignalsParamsMinGrade = "A"
	ListSportsEdgeSignalsParamsMinGradeB ListSportsEdgeSignalsParamsMinGrade = "B"
	ListSportsEdgeSignalsParamsMinGradeS ListSportsEdgeSignalsParamsMinGrade = "S"
)

Defines values for ListSportsEdgeSignalsParamsMinGrade.

func (ListSportsEdgeSignalsParamsMinGrade) Valid

Valid indicates whether the value is a known member of the ListSportsEdgeSignalsParamsMinGrade enum.

type ListSportsEdgeSignalsParamsXQueryValidation added in v0.3.0

type ListSportsEdgeSignalsParamsXQueryValidation string

ListSportsEdgeSignalsParamsXQueryValidation defines parameters for ListSportsEdgeSignals.

const (
	ListSportsEdgeSignalsParamsXQueryValidationStrict ListSportsEdgeSignalsParamsXQueryValidation = "strict"
)

Defines values for ListSportsEdgeSignalsParamsXQueryValidation.

func (ListSportsEdgeSignalsParamsXQueryValidation) Valid added in v0.3.0

Valid indicates whether the value is a known member of the ListSportsEdgeSignalsParamsXQueryValidation enum.

type ListSportsEdgeSignalsResponse

type ListSportsEdgeSignalsResponse struct {
	Body         []byte
	HTTPResponse *http.Response
	// JSON200 the response for an HTTP 200 `application/json` response
	JSON200 *struct {
		Data       []PreGameSide                                  `json:"data"`
		HasMore    bool                                           `json:"has_more"`
		Meta       ResponseMeta                                   `json:"meta"`
		NextCursor *string                                        `json:"next_cursor,omitempty"`
		Object     ListSportsEdgeSignals200JSONResponseBodyObject `json:"object"`
		Total      *int                                           `json:"total,omitempty"`
	}
	// JSON400 the response for an HTTP 400 `application/json` response
	JSON400 *ApiError
	// JSON401 the response for an HTTP 401 `application/json` response
	JSON401 *ApiError
	// JSON402 the response for an HTTP 402 `application/json` response
	JSON402 *ApiError
	// JSON403 the response for an HTTP 403 `application/json` response
	JSON403 *ApiError
	// JSON408 the response for an HTTP 408 `application/json` response
	JSON408 *ApiError
	// JSON423 the response for an HTTP 423 `application/json` response
	JSON423 *ApiError
	// JSON429 the response for an HTTP 429 `application/json` response
	JSON429 *ApiError
	// JSON500 the response for an HTTP 500 `application/json` response
	JSON500 *ApiError
	// JSON503 the response for an HTTP 503 `application/json` response
	JSON503 *ApiError
	// Headers200 the parsed response headers for an HTTP 200 response
	Headers200 *ListSportsEdgeSignalsResponse200Headers
	// Headers304 the parsed response headers for an HTTP 304 response
	Headers304 *ListSportsEdgeSignalsResponse304Headers
	// Headers429 the parsed response headers for an HTTP 429 response
	Headers429 *ListSportsEdgeSignalsResponse429Headers
	// Headers503 the parsed response headers for an HTTP 503 response
	Headers503 *ListSportsEdgeSignalsResponse503Headers
}

func ParseListSportsEdgeSignalsResponse

func ParseListSportsEdgeSignalsResponse(rsp *http.Response) (*ListSportsEdgeSignalsResponse, error)

ParseListSportsEdgeSignalsResponse parses an HTTP response from a ListSportsEdgeSignalsWithResponse call

func (ListSportsEdgeSignalsResponse) ContentType

func (r ListSportsEdgeSignalsResponse) ContentType() string

ContentType is a convenience method to retrieve the Content-Type value from the HTTP response headers

func (ListSportsEdgeSignalsResponse) GetBody

func (r ListSportsEdgeSignalsResponse) GetBody() []byte

GetBody returns the raw response body bytes

func (ListSportsEdgeSignalsResponse) GetJSON200

func (r ListSportsEdgeSignalsResponse) GetJSON200() *struct {
	Data       []PreGameSide                                  `json:"data"`
	HasMore    bool                                           `json:"has_more"`
	Meta       ResponseMeta                                   `json:"meta"`
	NextCursor *string                                        `json:"next_cursor,omitempty"`
	Object     ListSportsEdgeSignals200JSONResponseBodyObject `json:"object"`
	Total      *int                                           `json:"total,omitempty"`
}

GetJSON200 returns the response for an HTTP 200 `application/json` response

func (ListSportsEdgeSignalsResponse) GetJSON400

func (r ListSportsEdgeSignalsResponse) GetJSON400() *ApiError

GetJSON400 returns the response for an HTTP 400 `application/json` response

func (ListSportsEdgeSignalsResponse) GetJSON401

func (r ListSportsEdgeSignalsResponse) GetJSON401() *ApiError

GetJSON401 returns the response for an HTTP 401 `application/json` response

func (ListSportsEdgeSignalsResponse) GetJSON402

func (r ListSportsEdgeSignalsResponse) GetJSON402() *ApiError

GetJSON402 returns the response for an HTTP 402 `application/json` response

func (ListSportsEdgeSignalsResponse) GetJSON403

func (r ListSportsEdgeSignalsResponse) GetJSON403() *ApiError

GetJSON403 returns the response for an HTTP 403 `application/json` response

func (ListSportsEdgeSignalsResponse) GetJSON408 added in v0.2.0

func (r ListSportsEdgeSignalsResponse) GetJSON408() *ApiError

GetJSON408 returns the response for an HTTP 408 `application/json` response

func (ListSportsEdgeSignalsResponse) GetJSON423

func (r ListSportsEdgeSignalsResponse) GetJSON423() *ApiError

GetJSON423 returns the response for an HTTP 423 `application/json` response

func (ListSportsEdgeSignalsResponse) GetJSON429

func (r ListSportsEdgeSignalsResponse) GetJSON429() *ApiError

GetJSON429 returns the response for an HTTP 429 `application/json` response

func (ListSportsEdgeSignalsResponse) GetJSON500 added in v0.4.0

func (r ListSportsEdgeSignalsResponse) GetJSON500() *ApiError

GetJSON500 returns the response for an HTTP 500 `application/json` response

func (ListSportsEdgeSignalsResponse) GetJSON503

func (r ListSportsEdgeSignalsResponse) GetJSON503() *ApiError

GetJSON503 returns the response for an HTTP 503 `application/json` response

func (ListSportsEdgeSignalsResponse) Status

Status returns HTTPResponse.Status

func (ListSportsEdgeSignalsResponse) StatusCode

func (r ListSportsEdgeSignalsResponse) StatusCode() int

StatusCode returns HTTPResponse.StatusCode

type ListSportsEdgeSignalsResponse200Headers

type ListSportsEdgeSignalsResponse200Headers struct {
	ETag                *string
	RateLimitLimit      *int
	RateLimitRemaining  *int
	RateLimitReset      *int
	ServerTiming        *string
	XEffectiveQuery     *string
	XQueryIgnored       *string
	XRateLimitLimit     *int
	XRateLimitRemaining *int
	XRateLimitReset     *int
	XRequestId          *string
	XUsageAccounting    *string
}

ListSportsEdgeSignalsResponse200Headers the declared response headers of an HTTP 200 response for ListSportsEdgeSignals

type ListSportsEdgeSignalsResponse304Headers

type ListSportsEdgeSignalsResponse304Headers struct {
	ETag                *string
	RateLimitLimit      *int
	RateLimitRemaining  *int
	RateLimitReset      *int
	ServerTiming        *string
	XEffectiveQuery     *string
	XQueryIgnored       *string
	XRateLimitLimit     *int
	XRateLimitRemaining *int
	XRateLimitReset     *int
	XRequestId          *string
	XUsageAccounting    *string
}

ListSportsEdgeSignalsResponse304Headers the declared response headers of an HTTP 304 response for ListSportsEdgeSignals

type ListSportsEdgeSignalsResponse429Headers

type ListSportsEdgeSignalsResponse429Headers struct {
	RateLimitLimit      *int
	RateLimitRemaining  *int
	RateLimitReset      *int
	RetryAfter          *int
	XRateLimitLimit     *int
	XRateLimitRemaining *int
	XRateLimitReset     *int
	XRequestId          *string
}

ListSportsEdgeSignalsResponse429Headers the declared response headers of an HTTP 429 response for ListSportsEdgeSignals

type ListSportsEdgeSignalsResponse503Headers

type ListSportsEdgeSignalsResponse503Headers struct {
	RetryAfter *int
	XRequestId *string
}

ListSportsEdgeSignalsResponse503Headers the declared response headers of an HTTP 503 response for ListSportsEdgeSignals

type ListSuspiciousTrades200JSONResponseBodyObject added in v0.4.0

type ListSuspiciousTrades200JSONResponseBodyObject string

ListSuspiciousTrades200JSONResponseBodyObject defines parameters for ListSuspiciousTrades.

const (
	ListSuspiciousTrades200JSONResponseBodyObjectList ListSuspiciousTrades200JSONResponseBodyObject = "list"
)

Defines values for ListSuspiciousTrades200JSONResponseBodyObject.

func (ListSuspiciousTrades200JSONResponseBodyObject) Valid added in v0.4.0

Valid indicates whether the value is a known member of the ListSuspiciousTrades200JSONResponseBodyObject enum.

type ListSuspiciousTradesParams added in v0.4.0

type ListSuspiciousTradesParams struct {
	// Limit Maximum number of suspicious trades to return. Out-of-range values are clamped to 1..100.
	Limit *int `form:"limit,omitempty" json:"limit,omitempty"`

	// Cursor Pagination cursor from previous response.
	Cursor *string `form:"cursor,omitempty" json:"cursor,omitempty"`

	// MinSuspicion Minimum suspicion score (0-100). The live flag floor of 60 also applies.
	MinSuspicion *float32 `form:"min_suspicion,omitempty" json:"min_suspicion,omitempty"`

	// Severity Compatible filter. flag selects live threshold crossings. watch returns no rows because no live watch policy exists.
	Severity *ListSuspiciousTradesParamsSeverity `form:"severity,omitempty" json:"severity,omitempty"`

	// Mode Pagination mode. live (default) keeps the 120-second response cache; stable pins the walk to one published scoring generation and binds the cursor to the limit and filters.
	Mode *ListSuspiciousTradesParamsMode `form:"mode,omitempty" json:"mode,omitempty"`

	// XQueryValidation Opt into strict query-name validation. The default is compatible: unknown names are ignored and reported in X-Query-Ignored. With strict, an unknown name returns 400 bad_request with error.reason unknown_query_parameter before the handler runs.
	XQueryValidation *ListSuspiciousTradesParamsXQueryValidation `json:"X-Query-Validation,omitempty"`

	// IfNoneMatch Conditional GET validator from a previous ETag. Matching values return 304 Not Modified with an empty body.
	IfNoneMatch *string `json:"If-None-Match,omitempty"`
}

ListSuspiciousTradesParams defines parameters for ListSuspiciousTrades.

type ListSuspiciousTradesParamsMode added in v0.4.0

type ListSuspiciousTradesParamsMode string

ListSuspiciousTradesParamsMode defines parameters for ListSuspiciousTrades.

const (
	ListSuspiciousTradesParamsModeLive   ListSuspiciousTradesParamsMode = "live"
	ListSuspiciousTradesParamsModeStable ListSuspiciousTradesParamsMode = "stable"
)

Defines values for ListSuspiciousTradesParamsMode.

func (ListSuspiciousTradesParamsMode) Valid added in v0.4.0

Valid indicates whether the value is a known member of the ListSuspiciousTradesParamsMode enum.

type ListSuspiciousTradesParamsSeverity added in v0.4.0

type ListSuspiciousTradesParamsSeverity string

ListSuspiciousTradesParamsSeverity defines parameters for ListSuspiciousTrades.

const (
	ListSuspiciousTradesParamsSeverityFlag  ListSuspiciousTradesParamsSeverity = "flag"
	ListSuspiciousTradesParamsSeverityWatch ListSuspiciousTradesParamsSeverity = "watch"
)

Defines values for ListSuspiciousTradesParamsSeverity.

func (ListSuspiciousTradesParamsSeverity) Valid added in v0.4.0

Valid indicates whether the value is a known member of the ListSuspiciousTradesParamsSeverity enum.

type ListSuspiciousTradesParamsXQueryValidation added in v0.4.0

type ListSuspiciousTradesParamsXQueryValidation string

ListSuspiciousTradesParamsXQueryValidation defines parameters for ListSuspiciousTrades.

const (
	ListSuspiciousTradesParamsXQueryValidationStrict ListSuspiciousTradesParamsXQueryValidation = "strict"
)

Defines values for ListSuspiciousTradesParamsXQueryValidation.

func (ListSuspiciousTradesParamsXQueryValidation) Valid added in v0.4.0

Valid indicates whether the value is a known member of the ListSuspiciousTradesParamsXQueryValidation enum.

type ListSuspiciousTradesResponse added in v0.4.0

type ListSuspiciousTradesResponse struct {
	Body         []byte
	HTTPResponse *http.Response
	// JSON200 the response for an HTTP 200 `application/json` response
	JSON200 *struct {
		Data       []SuspiciousTrade                             `json:"data"`
		HasMore    bool                                          `json:"has_more"`
		Meta       ResponseMeta                                  `json:"meta"`
		NextCursor *string                                       `json:"next_cursor,omitempty"`
		Object     ListSuspiciousTrades200JSONResponseBodyObject `json:"object"`

		// Total Total matching rows when the read model exposes a count; the key is absent when it does not.
		Total *int `json:"total,omitempty"`
	}
	// JSON400 the response for an HTTP 400 `application/json` response
	JSON400 *ApiError
	// JSON401 the response for an HTTP 401 `application/json` response
	JSON401 *ApiError
	// JSON402 the response for an HTTP 402 `application/json` response
	JSON402 *ApiError
	// JSON403 the response for an HTTP 403 `application/json` response
	JSON403 *ApiError
	// JSON408 the response for an HTTP 408 `application/json` response
	JSON408 *ApiError
	// JSON423 the response for an HTTP 423 `application/json` response
	JSON423 *ApiError
	// JSON429 the response for an HTTP 429 `application/json` response
	JSON429 *ApiError
	// JSON500 the response for an HTTP 500 `application/json` response
	JSON500 *ApiError
	// JSON503 the response for an HTTP 503 `application/json` response
	JSON503 *ApiError
	// Headers200 the parsed response headers for an HTTP 200 response
	Headers200 *ListSuspiciousTradesResponse200Headers
	// Headers304 the parsed response headers for an HTTP 304 response
	Headers304 *ListSuspiciousTradesResponse304Headers
	// Headers429 the parsed response headers for an HTTP 429 response
	Headers429 *ListSuspiciousTradesResponse429Headers
	// Headers503 the parsed response headers for an HTTP 503 response
	Headers503 *ListSuspiciousTradesResponse503Headers
}

func ParseListSuspiciousTradesResponse added in v0.4.0

func ParseListSuspiciousTradesResponse(rsp *http.Response) (*ListSuspiciousTradesResponse, error)

ParseListSuspiciousTradesResponse parses an HTTP response from a ListSuspiciousTradesWithResponse call

func (ListSuspiciousTradesResponse) ContentType added in v0.4.0

func (r ListSuspiciousTradesResponse) ContentType() string

ContentType is a convenience method to retrieve the Content-Type value from the HTTP response headers

func (ListSuspiciousTradesResponse) GetBody added in v0.4.0

func (r ListSuspiciousTradesResponse) GetBody() []byte

GetBody returns the raw response body bytes

func (ListSuspiciousTradesResponse) GetJSON200 added in v0.4.0

func (r ListSuspiciousTradesResponse) GetJSON200() *struct {
	Data       []SuspiciousTrade                             `json:"data"`
	HasMore    bool                                          `json:"has_more"`
	Meta       ResponseMeta                                  `json:"meta"`
	NextCursor *string                                       `json:"next_cursor,omitempty"`
	Object     ListSuspiciousTrades200JSONResponseBodyObject `json:"object"`

	// Total Total matching rows when the read model exposes a count; the key is absent when it does not.
	Total *int `json:"total,omitempty"`
}

GetJSON200 returns the response for an HTTP 200 `application/json` response

func (ListSuspiciousTradesResponse) GetJSON400 added in v0.4.0

func (r ListSuspiciousTradesResponse) GetJSON400() *ApiError

GetJSON400 returns the response for an HTTP 400 `application/json` response

func (ListSuspiciousTradesResponse) GetJSON401 added in v0.4.0

func (r ListSuspiciousTradesResponse) GetJSON401() *ApiError

GetJSON401 returns the response for an HTTP 401 `application/json` response

func (ListSuspiciousTradesResponse) GetJSON402 added in v0.4.0

func (r ListSuspiciousTradesResponse) GetJSON402() *ApiError

GetJSON402 returns the response for an HTTP 402 `application/json` response

func (ListSuspiciousTradesResponse) GetJSON403 added in v0.4.0

func (r ListSuspiciousTradesResponse) GetJSON403() *ApiError

GetJSON403 returns the response for an HTTP 403 `application/json` response

func (ListSuspiciousTradesResponse) GetJSON408 added in v0.4.0

func (r ListSuspiciousTradesResponse) GetJSON408() *ApiError

GetJSON408 returns the response for an HTTP 408 `application/json` response

func (ListSuspiciousTradesResponse) GetJSON423 added in v0.4.0

func (r ListSuspiciousTradesResponse) GetJSON423() *ApiError

GetJSON423 returns the response for an HTTP 423 `application/json` response

func (ListSuspiciousTradesResponse) GetJSON429 added in v0.4.0

func (r ListSuspiciousTradesResponse) GetJSON429() *ApiError

GetJSON429 returns the response for an HTTP 429 `application/json` response

func (ListSuspiciousTradesResponse) GetJSON500 added in v0.4.0

func (r ListSuspiciousTradesResponse) GetJSON500() *ApiError

GetJSON500 returns the response for an HTTP 500 `application/json` response

func (ListSuspiciousTradesResponse) GetJSON503 added in v0.4.0

func (r ListSuspiciousTradesResponse) GetJSON503() *ApiError

GetJSON503 returns the response for an HTTP 503 `application/json` response

func (ListSuspiciousTradesResponse) Status added in v0.4.0

Status returns HTTPResponse.Status

func (ListSuspiciousTradesResponse) StatusCode added in v0.4.0

func (r ListSuspiciousTradesResponse) StatusCode() int

StatusCode returns HTTPResponse.StatusCode

type ListSuspiciousTradesResponse200Headers added in v0.4.0

type ListSuspiciousTradesResponse200Headers struct {
	ETag                *string
	RateLimitLimit      *int
	RateLimitRemaining  *int
	RateLimitReset      *int
	ServerTiming        *string
	XEffectiveQuery     *string
	XQueryIgnored       *string
	XRateLimitLimit     *int
	XRateLimitRemaining *int
	XRateLimitReset     *int
	XRequestId          *string
	XUsageAccounting    *string
}

ListSuspiciousTradesResponse200Headers the declared response headers of an HTTP 200 response for ListSuspiciousTrades

type ListSuspiciousTradesResponse304Headers added in v0.4.0

type ListSuspiciousTradesResponse304Headers struct {
	ETag                *string
	RateLimitLimit      *int
	RateLimitRemaining  *int
	RateLimitReset      *int
	ServerTiming        *string
	XEffectiveQuery     *string
	XQueryIgnored       *string
	XRateLimitLimit     *int
	XRateLimitRemaining *int
	XRateLimitReset     *int
	XRequestId          *string
	XUsageAccounting    *string
}

ListSuspiciousTradesResponse304Headers the declared response headers of an HTTP 304 response for ListSuspiciousTrades

type ListSuspiciousTradesResponse429Headers added in v0.4.0

type ListSuspiciousTradesResponse429Headers struct {
	RateLimitLimit      *int
	RateLimitRemaining  *int
	RateLimitReset      *int
	RetryAfter          *int
	XRateLimitLimit     *int
	XRateLimitRemaining *int
	XRateLimitReset     *int
	XRequestId          *string
}

ListSuspiciousTradesResponse429Headers the declared response headers of an HTTP 429 response for ListSuspiciousTrades

type ListSuspiciousTradesResponse503Headers added in v0.4.0

type ListSuspiciousTradesResponse503Headers struct {
	RetryAfter *int
	XRequestId *string
}

ListSuspiciousTradesResponse503Headers the declared response headers of an HTTP 503 response for ListSuspiciousTrades

type ListTrendingWallets200JSONResponseBodyObject

type ListTrendingWallets200JSONResponseBodyObject string

ListTrendingWallets200JSONResponseBodyObject defines parameters for ListTrendingWallets.

const (
	ListTrendingWallets200JSONResponseBodyObjectList ListTrendingWallets200JSONResponseBodyObject = "list"
)

Defines values for ListTrendingWallets200JSONResponseBodyObject.

func (ListTrendingWallets200JSONResponseBodyObject) Valid

Valid indicates whether the value is a known member of the ListTrendingWallets200JSONResponseBodyObject enum.

type ListTrendingWalletsParams

type ListTrendingWalletsParams struct {
	// Limit Polymarket's weekly leaderboard caps the ranked set at 50 wallets; requests above 50 still return at most 50. Out-of-range values are clamped to 1..50.
	Limit *int `form:"limit,omitempty" json:"limit,omitempty"`

	// Cursor Opaque pagination cursor from a previous response, bound to its effective limit, window and ranked-board generation. A changed board or request scope returns error.reason=cursor_expired; legacy page-only cursors must restart from page one.
	Cursor *string `form:"cursor,omitempty" json:"cursor,omitempty"`

	// Window Trailing window.
	Window *ListTrendingWalletsParamsWindow `form:"window,omitempty" json:"window,omitempty"`

	// XQueryValidation Opt into strict query-name validation. The default is compatible: unknown names are ignored and reported in X-Query-Ignored. With strict, an unknown name returns 400 bad_request with error.reason unknown_query_parameter before the handler runs, including when its percent escape is incomplete.
	XQueryValidation *ListTrendingWalletsParamsXQueryValidation `json:"X-Query-Validation,omitempty"`
}

ListTrendingWalletsParams defines parameters for ListTrendingWallets.

type ListTrendingWalletsParamsWindow

type ListTrendingWalletsParamsWindow string

ListTrendingWalletsParamsWindow defines parameters for ListTrendingWallets.

const (
	ListTrendingWalletsParamsWindowN30d ListTrendingWalletsParamsWindow = "30d"
	ListTrendingWalletsParamsWindowN7d  ListTrendingWalletsParamsWindow = "7d"
)

Defines values for ListTrendingWalletsParamsWindow.

func (ListTrendingWalletsParamsWindow) Valid

Valid indicates whether the value is a known member of the ListTrendingWalletsParamsWindow enum.

type ListTrendingWalletsParamsXQueryValidation added in v0.3.0

type ListTrendingWalletsParamsXQueryValidation string

ListTrendingWalletsParamsXQueryValidation defines parameters for ListTrendingWallets.

const (
	ListTrendingWalletsParamsXQueryValidationStrict ListTrendingWalletsParamsXQueryValidation = "strict"
)

Defines values for ListTrendingWalletsParamsXQueryValidation.

func (ListTrendingWalletsParamsXQueryValidation) Valid added in v0.3.0

Valid indicates whether the value is a known member of the ListTrendingWalletsParamsXQueryValidation enum.

type ListTrendingWalletsResponse

type ListTrendingWalletsResponse struct {
	Body         []byte
	HTTPResponse *http.Response
	// JSON200 the response for an HTTP 200 `application/json` response
	JSON200 *struct {
		Data    []TrendingWallet `json:"data"`
		HasMore bool             `json:"has_more"`
		Meta    ResponseMeta     `json:"meta"`

		// NextCursor Opaque cursor for the next page; absent on the last page.
		NextCursor *string                                      `json:"next_cursor,omitempty"`
		Object     ListTrendingWallets200JSONResponseBodyObject `json:"object"`

		// Total Total ranked rows when the read model exposes a count; may be absent.
		Total *int `json:"total,omitempty"`
	}
	// JSON400 the response for an HTTP 400 `application/json` response
	JSON400 *ApiError
	// JSON401 the response for an HTTP 401 `application/json` response
	JSON401 *ApiError
	// JSON402 the response for an HTTP 402 `application/json` response
	JSON402 *ApiError
	// JSON403 the response for an HTTP 403 `application/json` response
	JSON403 *ApiError
	// JSON408 the response for an HTTP 408 `application/json` response
	JSON408 *ApiError
	// JSON423 the response for an HTTP 423 `application/json` response
	JSON423 *ApiError
	// JSON429 the response for an HTTP 429 `application/json` response
	JSON429 *ApiError
	// JSON500 the response for an HTTP 500 `application/json` response
	JSON500 *ApiError
	// JSON503 the response for an HTTP 503 `application/json` response
	JSON503 *ApiError
	// Headers200 the parsed response headers for an HTTP 200 response
	Headers200 *ListTrendingWalletsResponse200Headers
	// Headers304 the parsed response headers for an HTTP 304 response
	Headers304 *ListTrendingWalletsResponse304Headers
	// Headers429 the parsed response headers for an HTTP 429 response
	Headers429 *ListTrendingWalletsResponse429Headers
	// Headers503 the parsed response headers for an HTTP 503 response
	Headers503 *ListTrendingWalletsResponse503Headers
}

func ParseListTrendingWalletsResponse

func ParseListTrendingWalletsResponse(rsp *http.Response) (*ListTrendingWalletsResponse, error)

ParseListTrendingWalletsResponse parses an HTTP response from a ListTrendingWalletsWithResponse call

func (ListTrendingWalletsResponse) ContentType

func (r ListTrendingWalletsResponse) ContentType() string

ContentType is a convenience method to retrieve the Content-Type value from the HTTP response headers

func (ListTrendingWalletsResponse) GetBody

func (r ListTrendingWalletsResponse) GetBody() []byte

GetBody returns the raw response body bytes

func (ListTrendingWalletsResponse) GetJSON200

func (r ListTrendingWalletsResponse) GetJSON200() *struct {
	Data    []TrendingWallet `json:"data"`
	HasMore bool             `json:"has_more"`
	Meta    ResponseMeta     `json:"meta"`

	// NextCursor Opaque cursor for the next page; absent on the last page.
	NextCursor *string                                      `json:"next_cursor,omitempty"`
	Object     ListTrendingWallets200JSONResponseBodyObject `json:"object"`

	// Total Total ranked rows when the read model exposes a count; may be absent.
	Total *int `json:"total,omitempty"`
}

GetJSON200 returns the response for an HTTP 200 `application/json` response

func (ListTrendingWalletsResponse) GetJSON400

func (r ListTrendingWalletsResponse) GetJSON400() *ApiError

GetJSON400 returns the response for an HTTP 400 `application/json` response

func (ListTrendingWalletsResponse) GetJSON401

func (r ListTrendingWalletsResponse) GetJSON401() *ApiError

GetJSON401 returns the response for an HTTP 401 `application/json` response

func (ListTrendingWalletsResponse) GetJSON402

func (r ListTrendingWalletsResponse) GetJSON402() *ApiError

GetJSON402 returns the response for an HTTP 402 `application/json` response

func (ListTrendingWalletsResponse) GetJSON403

func (r ListTrendingWalletsResponse) GetJSON403() *ApiError

GetJSON403 returns the response for an HTTP 403 `application/json` response

func (ListTrendingWalletsResponse) GetJSON408 added in v0.2.0

func (r ListTrendingWalletsResponse) GetJSON408() *ApiError

GetJSON408 returns the response for an HTTP 408 `application/json` response

func (ListTrendingWalletsResponse) GetJSON423

func (r ListTrendingWalletsResponse) GetJSON423() *ApiError

GetJSON423 returns the response for an HTTP 423 `application/json` response

func (ListTrendingWalletsResponse) GetJSON429

func (r ListTrendingWalletsResponse) GetJSON429() *ApiError

GetJSON429 returns the response for an HTTP 429 `application/json` response

func (ListTrendingWalletsResponse) GetJSON500 added in v0.4.0

func (r ListTrendingWalletsResponse) GetJSON500() *ApiError

GetJSON500 returns the response for an HTTP 500 `application/json` response

func (ListTrendingWalletsResponse) GetJSON503

func (r ListTrendingWalletsResponse) GetJSON503() *ApiError

GetJSON503 returns the response for an HTTP 503 `application/json` response

func (ListTrendingWalletsResponse) Status

Status returns HTTPResponse.Status

func (ListTrendingWalletsResponse) StatusCode

func (r ListTrendingWalletsResponse) StatusCode() int

StatusCode returns HTTPResponse.StatusCode

type ListTrendingWalletsResponse200Headers

type ListTrendingWalletsResponse200Headers struct {
	CacheControl        *string
	ETag                *string
	RateLimitLimit      *int
	RateLimitRemaining  *int
	RateLimitReset      *int
	ServerTiming        *string
	XEffectiveQuery     *string
	XQueryIgnored       *string
	XRateLimitLimit     *int
	XRateLimitRemaining *int
	XRateLimitReset     *int
	XRequestId          *string
	XUsageAccounting    *string
}

ListTrendingWalletsResponse200Headers the declared response headers of an HTTP 200 response for ListTrendingWallets

type ListTrendingWalletsResponse304Headers

type ListTrendingWalletsResponse304Headers struct {
	CacheControl        *string
	ETag                *string
	RateLimitLimit      *int
	RateLimitRemaining  *int
	RateLimitReset      *int
	ServerTiming        *string
	XEffectiveQuery     *string
	XQueryIgnored       *string
	XRateLimitLimit     *int
	XRateLimitRemaining *int
	XRateLimitReset     *int
	XRequestId          *string
	XUsageAccounting    *string
}

ListTrendingWalletsResponse304Headers the declared response headers of an HTTP 304 response for ListTrendingWallets

type ListTrendingWalletsResponse429Headers

type ListTrendingWalletsResponse429Headers struct {
	RateLimitLimit      *int
	RateLimitRemaining  *int
	RateLimitReset      *int
	RetryAfter          *int
	XRateLimitLimit     *int
	XRateLimitRemaining *int
	XRateLimitReset     *int
	XRequestId          *string
}

ListTrendingWalletsResponse429Headers the declared response headers of an HTTP 429 response for ListTrendingWallets

type ListTrendingWalletsResponse503Headers

type ListTrendingWalletsResponse503Headers struct {
	RetryAfter *int
	XRequestId *string
}

ListTrendingWalletsResponse503Headers the declared response headers of an HTTP 503 response for ListTrendingWallets

type ListWebhookDeliveries200JSONResponseBodyObject

type ListWebhookDeliveries200JSONResponseBodyObject string

ListWebhookDeliveries200JSONResponseBodyObject defines parameters for ListWebhookDeliveries.

const (
	ListWebhookDeliveries200JSONResponseBodyObjectList ListWebhookDeliveries200JSONResponseBodyObject = "list"
)

Defines values for ListWebhookDeliveries200JSONResponseBodyObject.

func (ListWebhookDeliveries200JSONResponseBodyObject) Valid

Valid indicates whether the value is a known member of the ListWebhookDeliveries200JSONResponseBodyObject enum.

type ListWebhookDeliveriesParams

type ListWebhookDeliveriesParams struct {
	// Cursor Opaque pagination cursor returned as next_cursor by a prior response. Omit to fetch the newest page.
	Cursor *string `form:"cursor,omitempty" json:"cursor,omitempty"`

	// Limit Maximum delivery rows to return per page. Out-of-range values are clamped to 1..100.
	Limit *int `form:"limit,omitempty" json:"limit,omitempty"`

	// XQueryValidation Opt into strict query-name validation. The default is compatible: unknown names are ignored and reported in X-Query-Ignored. With strict, an unknown name returns 400 bad_request with error.reason unknown_query_parameter before the handler runs, including when its percent escape is incomplete.
	XQueryValidation *ListWebhookDeliveriesParamsXQueryValidation `json:"X-Query-Validation,omitempty"`
}

ListWebhookDeliveriesParams defines parameters for ListWebhookDeliveries.

type ListWebhookDeliveriesParamsXQueryValidation added in v0.3.0

type ListWebhookDeliveriesParamsXQueryValidation string

ListWebhookDeliveriesParamsXQueryValidation defines parameters for ListWebhookDeliveries.

const (
	ListWebhookDeliveriesParamsXQueryValidationStrict ListWebhookDeliveriesParamsXQueryValidation = "strict"
)

Defines values for ListWebhookDeliveriesParamsXQueryValidation.

func (ListWebhookDeliveriesParamsXQueryValidation) Valid added in v0.3.0

Valid indicates whether the value is a known member of the ListWebhookDeliveriesParamsXQueryValidation enum.

type ListWebhookDeliveriesResponse

type ListWebhookDeliveriesResponse struct {
	Body         []byte
	HTTPResponse *http.Response
	// JSON200 the response for an HTTP 200 `application/json` response
	JSON200 *struct {
		Data       []WebhookDelivery                              `json:"data"`
		HasMore    bool                                           `json:"has_more"`
		Meta       ResponseMeta                                   `json:"meta"`
		NextCursor *string                                        `json:"next_cursor,omitempty"`
		Object     ListWebhookDeliveries200JSONResponseBodyObject `json:"object"`
		Total      *int                                           `json:"total,omitempty"`
	}
	// JSON400 the response for an HTTP 400 `application/json` response
	JSON400 *ApiError
	// JSON401 the response for an HTTP 401 `application/json` response
	JSON401 *ApiError
	// JSON402 the response for an HTTP 402 `application/json` response
	JSON402 *ApiError
	// JSON403 the response for an HTTP 403 `application/json` response
	JSON403 *ApiError
	// JSON404 the response for an HTTP 404 `application/json` response
	JSON404 *ApiError
	// JSON408 the response for an HTTP 408 `application/json` response
	JSON408 *ApiError
	// JSON423 the response for an HTTP 423 `application/json` response
	JSON423 *ApiError
	// JSON429 the response for an HTTP 429 `application/json` response
	JSON429 *ApiError
	// JSON500 the response for an HTTP 500 `application/json` response
	JSON500 *ApiError
	// JSON503 the response for an HTTP 503 `application/json` response
	JSON503 *ApiError
	// Headers200 the parsed response headers for an HTTP 200 response
	Headers200 *ListWebhookDeliveriesResponse200Headers
	// Headers429 the parsed response headers for an HTTP 429 response
	Headers429 *ListWebhookDeliveriesResponse429Headers
	// Headers503 the parsed response headers for an HTTP 503 response
	Headers503 *ListWebhookDeliveriesResponse503Headers
}

func ParseListWebhookDeliveriesResponse

func ParseListWebhookDeliveriesResponse(rsp *http.Response) (*ListWebhookDeliveriesResponse, error)

ParseListWebhookDeliveriesResponse parses an HTTP response from a ListWebhookDeliveriesWithResponse call

func (ListWebhookDeliveriesResponse) ContentType

func (r ListWebhookDeliveriesResponse) ContentType() string

ContentType is a convenience method to retrieve the Content-Type value from the HTTP response headers

func (ListWebhookDeliveriesResponse) GetBody

func (r ListWebhookDeliveriesResponse) GetBody() []byte

GetBody returns the raw response body bytes

func (ListWebhookDeliveriesResponse) GetJSON200

func (r ListWebhookDeliveriesResponse) GetJSON200() *struct {
	Data       []WebhookDelivery                              `json:"data"`
	HasMore    bool                                           `json:"has_more"`
	Meta       ResponseMeta                                   `json:"meta"`
	NextCursor *string                                        `json:"next_cursor,omitempty"`
	Object     ListWebhookDeliveries200JSONResponseBodyObject `json:"object"`
	Total      *int                                           `json:"total,omitempty"`
}

GetJSON200 returns the response for an HTTP 200 `application/json` response

func (ListWebhookDeliveriesResponse) GetJSON400

func (r ListWebhookDeliveriesResponse) GetJSON400() *ApiError

GetJSON400 returns the response for an HTTP 400 `application/json` response

func (ListWebhookDeliveriesResponse) GetJSON401

func (r ListWebhookDeliveriesResponse) GetJSON401() *ApiError

GetJSON401 returns the response for an HTTP 401 `application/json` response

func (ListWebhookDeliveriesResponse) GetJSON402

func (r ListWebhookDeliveriesResponse) GetJSON402() *ApiError

GetJSON402 returns the response for an HTTP 402 `application/json` response

func (ListWebhookDeliveriesResponse) GetJSON403

func (r ListWebhookDeliveriesResponse) GetJSON403() *ApiError

GetJSON403 returns the response for an HTTP 403 `application/json` response

func (ListWebhookDeliveriesResponse) GetJSON404

func (r ListWebhookDeliveriesResponse) GetJSON404() *ApiError

GetJSON404 returns the response for an HTTP 404 `application/json` response

func (ListWebhookDeliveriesResponse) GetJSON408 added in v0.2.0

func (r ListWebhookDeliveriesResponse) GetJSON408() *ApiError

GetJSON408 returns the response for an HTTP 408 `application/json` response

func (ListWebhookDeliveriesResponse) GetJSON423

func (r ListWebhookDeliveriesResponse) GetJSON423() *ApiError

GetJSON423 returns the response for an HTTP 423 `application/json` response

func (ListWebhookDeliveriesResponse) GetJSON429

func (r ListWebhookDeliveriesResponse) GetJSON429() *ApiError

GetJSON429 returns the response for an HTTP 429 `application/json` response

func (ListWebhookDeliveriesResponse) GetJSON500

func (r ListWebhookDeliveriesResponse) GetJSON500() *ApiError

GetJSON500 returns the response for an HTTP 500 `application/json` response

func (ListWebhookDeliveriesResponse) GetJSON503

func (r ListWebhookDeliveriesResponse) GetJSON503() *ApiError

GetJSON503 returns the response for an HTTP 503 `application/json` response

func (ListWebhookDeliveriesResponse) Status

Status returns HTTPResponse.Status

func (ListWebhookDeliveriesResponse) StatusCode

func (r ListWebhookDeliveriesResponse) StatusCode() int

StatusCode returns HTTPResponse.StatusCode

type ListWebhookDeliveriesResponse200Headers

type ListWebhookDeliveriesResponse200Headers struct {
	RateLimitLimit      *int
	RateLimitRemaining  *int
	RateLimitReset      *int
	ServerTiming        *string
	XEffectiveQuery     *string
	XQueryIgnored       *string
	XRateLimitLimit     *int
	XRateLimitRemaining *int
	XRateLimitReset     *int
	XRequestId          *string
	XUsageAccounting    *string
}

ListWebhookDeliveriesResponse200Headers the declared response headers of an HTTP 200 response for ListWebhookDeliveries

type ListWebhookDeliveriesResponse429Headers

type ListWebhookDeliveriesResponse429Headers struct {
	RateLimitLimit      *int
	RateLimitRemaining  *int
	RateLimitReset      *int
	RetryAfter          *int
	XRateLimitLimit     *int
	XRateLimitRemaining *int
	XRateLimitReset     *int
	XRequestId          *string
}

ListWebhookDeliveriesResponse429Headers the declared response headers of an HTTP 429 response for ListWebhookDeliveries

type ListWebhookDeliveriesResponse503Headers

type ListWebhookDeliveriesResponse503Headers struct {
	RetryAfter *int
	XRequestId *string
}

ListWebhookDeliveriesResponse503Headers the declared response headers of an HTTP 503 response for ListWebhookDeliveries

type ListWebhookEvents200JSONResponseBodyObject

type ListWebhookEvents200JSONResponseBodyObject string

ListWebhookEvents200JSONResponseBodyObject defines parameters for ListWebhookEvents.

const (
	ListWebhookEvents200JSONResponseBodyObjectList ListWebhookEvents200JSONResponseBodyObject = "list"
)

Defines values for ListWebhookEvents200JSONResponseBodyObject.

func (ListWebhookEvents200JSONResponseBodyObject) Valid

Valid indicates whether the value is a known member of the ListWebhookEvents200JSONResponseBodyObject enum.

type ListWebhookEventsParams added in v0.3.0

type ListWebhookEventsParams struct {
	// XQueryValidation Opt into strict query-name validation. The default is compatible: unknown names are ignored and reported in X-Query-Ignored. With strict, an unknown name returns 400 bad_request with error.reason unknown_query_parameter before the handler runs, including when its percent escape is incomplete.
	XQueryValidation *ListWebhookEventsParamsXQueryValidation `json:"X-Query-Validation,omitempty"`
}

ListWebhookEventsParams defines parameters for ListWebhookEvents.

type ListWebhookEventsParamsXQueryValidation added in v0.3.0

type ListWebhookEventsParamsXQueryValidation string

ListWebhookEventsParamsXQueryValidation defines parameters for ListWebhookEvents.

const (
	ListWebhookEventsParamsXQueryValidationStrict ListWebhookEventsParamsXQueryValidation = "strict"
)

Defines values for ListWebhookEventsParamsXQueryValidation.

func (ListWebhookEventsParamsXQueryValidation) Valid added in v0.3.0

Valid indicates whether the value is a known member of the ListWebhookEventsParamsXQueryValidation enum.

type ListWebhookEventsResponse

type ListWebhookEventsResponse struct {
	Body         []byte
	HTTPResponse *http.Response
	// JSON200 the response for an HTTP 200 `application/json` response
	JSON200 *struct {
		Data       []WebhookEventDescriptor                   `json:"data"`
		HasMore    bool                                       `json:"has_more"`
		Meta       ResponseMeta                               `json:"meta"`
		NextCursor *string                                    `json:"next_cursor,omitempty"`
		Object     ListWebhookEvents200JSONResponseBodyObject `json:"object"`
		Total      *int                                       `json:"total,omitempty"`
	}
	// JSON401 the response for an HTTP 401 `application/json` response
	JSON401 *ApiError
	// JSON402 the response for an HTTP 402 `application/json` response
	JSON402 *ApiError
	// JSON403 the response for an HTTP 403 `application/json` response
	JSON403 *ApiError
	// JSON408 the response for an HTTP 408 `application/json` response
	JSON408 *ApiError
	// JSON423 the response for an HTTP 423 `application/json` response
	JSON423 *ApiError
	// JSON429 the response for an HTTP 429 `application/json` response
	JSON429 *ApiError
	// JSON500 the response for an HTTP 500 `application/json` response
	JSON500 *ApiError
	// JSON503 the response for an HTTP 503 `application/json` response
	JSON503 *ApiError
	// Headers200 the parsed response headers for an HTTP 200 response
	Headers200 *ListWebhookEventsResponse200Headers
	// Headers429 the parsed response headers for an HTTP 429 response
	Headers429 *ListWebhookEventsResponse429Headers
	// Headers503 the parsed response headers for an HTTP 503 response
	Headers503 *ListWebhookEventsResponse503Headers
}

func ParseListWebhookEventsResponse

func ParseListWebhookEventsResponse(rsp *http.Response) (*ListWebhookEventsResponse, error)

ParseListWebhookEventsResponse parses an HTTP response from a ListWebhookEventsWithResponse call

func (ListWebhookEventsResponse) ContentType

func (r ListWebhookEventsResponse) ContentType() string

ContentType is a convenience method to retrieve the Content-Type value from the HTTP response headers

func (ListWebhookEventsResponse) GetBody

func (r ListWebhookEventsResponse) GetBody() []byte

GetBody returns the raw response body bytes

func (ListWebhookEventsResponse) GetJSON200

func (r ListWebhookEventsResponse) GetJSON200() *struct {
	Data       []WebhookEventDescriptor                   `json:"data"`
	HasMore    bool                                       `json:"has_more"`
	Meta       ResponseMeta                               `json:"meta"`
	NextCursor *string                                    `json:"next_cursor,omitempty"`
	Object     ListWebhookEvents200JSONResponseBodyObject `json:"object"`
	Total      *int                                       `json:"total,omitempty"`
}

GetJSON200 returns the response for an HTTP 200 `application/json` response

func (ListWebhookEventsResponse) GetJSON401

func (r ListWebhookEventsResponse) GetJSON401() *ApiError

GetJSON401 returns the response for an HTTP 401 `application/json` response

func (ListWebhookEventsResponse) GetJSON402

func (r ListWebhookEventsResponse) GetJSON402() *ApiError

GetJSON402 returns the response for an HTTP 402 `application/json` response

func (ListWebhookEventsResponse) GetJSON403

func (r ListWebhookEventsResponse) GetJSON403() *ApiError

GetJSON403 returns the response for an HTTP 403 `application/json` response

func (ListWebhookEventsResponse) GetJSON408 added in v0.2.0

func (r ListWebhookEventsResponse) GetJSON408() *ApiError

GetJSON408 returns the response for an HTTP 408 `application/json` response

func (ListWebhookEventsResponse) GetJSON423

func (r ListWebhookEventsResponse) GetJSON423() *ApiError

GetJSON423 returns the response for an HTTP 423 `application/json` response

func (ListWebhookEventsResponse) GetJSON429

func (r ListWebhookEventsResponse) GetJSON429() *ApiError

GetJSON429 returns the response for an HTTP 429 `application/json` response

func (ListWebhookEventsResponse) GetJSON500

func (r ListWebhookEventsResponse) GetJSON500() *ApiError

GetJSON500 returns the response for an HTTP 500 `application/json` response

func (ListWebhookEventsResponse) GetJSON503

func (r ListWebhookEventsResponse) GetJSON503() *ApiError

GetJSON503 returns the response for an HTTP 503 `application/json` response

func (ListWebhookEventsResponse) Status

func (r ListWebhookEventsResponse) Status() string

Status returns HTTPResponse.Status

func (ListWebhookEventsResponse) StatusCode

func (r ListWebhookEventsResponse) StatusCode() int

StatusCode returns HTTPResponse.StatusCode

type ListWebhookEventsResponse200Headers

type ListWebhookEventsResponse200Headers struct {
	RateLimitLimit      *int
	RateLimitRemaining  *int
	RateLimitReset      *int
	ServerTiming        *string
	XEffectiveQuery     *string
	XQueryIgnored       *string
	XRateLimitLimit     *int
	XRateLimitRemaining *int
	XRateLimitReset     *int
	XRequestId          *string
	XUsageAccounting    *string
}

ListWebhookEventsResponse200Headers the declared response headers of an HTTP 200 response for ListWebhookEvents

type ListWebhookEventsResponse429Headers

type ListWebhookEventsResponse429Headers struct {
	RateLimitLimit      *int
	RateLimitRemaining  *int
	RateLimitReset      *int
	RetryAfter          *int
	XRateLimitLimit     *int
	XRateLimitRemaining *int
	XRateLimitReset     *int
	XRequestId          *string
}

ListWebhookEventsResponse429Headers the declared response headers of an HTTP 429 response for ListWebhookEvents

type ListWebhookEventsResponse503Headers

type ListWebhookEventsResponse503Headers struct {
	RetryAfter *int
	XRequestId *string
}

ListWebhookEventsResponse503Headers the declared response headers of an HTTP 503 response for ListWebhookEvents

type ListWebhooks200JSONResponseBodyObject

type ListWebhooks200JSONResponseBodyObject string

ListWebhooks200JSONResponseBodyObject defines parameters for ListWebhooks.

const (
	ListWebhooks200JSONResponseBodyObjectList ListWebhooks200JSONResponseBodyObject = "list"
)

Defines values for ListWebhooks200JSONResponseBodyObject.

func (ListWebhooks200JSONResponseBodyObject) Valid

Valid indicates whether the value is a known member of the ListWebhooks200JSONResponseBodyObject enum.

type ListWebhooksParams added in v0.3.0

type ListWebhooksParams struct {
	// XQueryValidation Opt into strict query-name validation. The default is compatible: unknown names are ignored and reported in X-Query-Ignored. With strict, an unknown name returns 400 bad_request with error.reason unknown_query_parameter before the handler runs, including when its percent escape is incomplete.
	XQueryValidation *ListWebhooksParamsXQueryValidation `json:"X-Query-Validation,omitempty"`
}

ListWebhooksParams defines parameters for ListWebhooks.

type ListWebhooksParamsXQueryValidation added in v0.3.0

type ListWebhooksParamsXQueryValidation string

ListWebhooksParamsXQueryValidation defines parameters for ListWebhooks.

const (
	ListWebhooksParamsXQueryValidationStrict ListWebhooksParamsXQueryValidation = "strict"
)

Defines values for ListWebhooksParamsXQueryValidation.

func (ListWebhooksParamsXQueryValidation) Valid added in v0.3.0

Valid indicates whether the value is a known member of the ListWebhooksParamsXQueryValidation enum.

type ListWebhooksResponse

type ListWebhooksResponse struct {
	Body         []byte
	HTTPResponse *http.Response
	// JSON200 the response for an HTTP 200 `application/json` response
	JSON200 *struct {
		Data       []WebhookEndpoint                     `json:"data"`
		HasMore    bool                                  `json:"has_more"`
		Meta       ResponseMeta                          `json:"meta"`
		NextCursor *string                               `json:"next_cursor,omitempty"`
		Object     ListWebhooks200JSONResponseBodyObject `json:"object"`
		Total      *int                                  `json:"total,omitempty"`
	}
	// JSON400 the response for an HTTP 400 `application/json` response
	JSON400 *ApiError
	// JSON401 the response for an HTTP 401 `application/json` response
	JSON401 *ApiError
	// JSON402 the response for an HTTP 402 `application/json` response
	JSON402 *ApiError
	// JSON403 the response for an HTTP 403 `application/json` response
	JSON403 *ApiError
	// JSON408 the response for an HTTP 408 `application/json` response
	JSON408 *ApiError
	// JSON423 the response for an HTTP 423 `application/json` response
	JSON423 *ApiError
	// JSON429 the response for an HTTP 429 `application/json` response
	JSON429 *ApiError
	// JSON500 the response for an HTTP 500 `application/json` response
	JSON500 *ApiError
	// JSON503 the response for an HTTP 503 `application/json` response
	JSON503 *ApiError
	// Headers200 the parsed response headers for an HTTP 200 response
	Headers200 *ListWebhooksResponse200Headers
	// Headers429 the parsed response headers for an HTTP 429 response
	Headers429 *ListWebhooksResponse429Headers
	// Headers503 the parsed response headers for an HTTP 503 response
	Headers503 *ListWebhooksResponse503Headers
}

func ParseListWebhooksResponse

func ParseListWebhooksResponse(rsp *http.Response) (*ListWebhooksResponse, error)

ParseListWebhooksResponse parses an HTTP response from a ListWebhooksWithResponse call

func (ListWebhooksResponse) ContentType

func (r ListWebhooksResponse) ContentType() string

ContentType is a convenience method to retrieve the Content-Type value from the HTTP response headers

func (ListWebhooksResponse) GetBody

func (r ListWebhooksResponse) GetBody() []byte

GetBody returns the raw response body bytes

func (ListWebhooksResponse) GetJSON200

func (r ListWebhooksResponse) GetJSON200() *struct {
	Data       []WebhookEndpoint                     `json:"data"`
	HasMore    bool                                  `json:"has_more"`
	Meta       ResponseMeta                          `json:"meta"`
	NextCursor *string                               `json:"next_cursor,omitempty"`
	Object     ListWebhooks200JSONResponseBodyObject `json:"object"`
	Total      *int                                  `json:"total,omitempty"`
}

GetJSON200 returns the response for an HTTP 200 `application/json` response

func (ListWebhooksResponse) GetJSON400

func (r ListWebhooksResponse) GetJSON400() *ApiError

GetJSON400 returns the response for an HTTP 400 `application/json` response

func (ListWebhooksResponse) GetJSON401

func (r ListWebhooksResponse) GetJSON401() *ApiError

GetJSON401 returns the response for an HTTP 401 `application/json` response

func (ListWebhooksResponse) GetJSON402

func (r ListWebhooksResponse) GetJSON402() *ApiError

GetJSON402 returns the response for an HTTP 402 `application/json` response

func (ListWebhooksResponse) GetJSON403

func (r ListWebhooksResponse) GetJSON403() *ApiError

GetJSON403 returns the response for an HTTP 403 `application/json` response

func (ListWebhooksResponse) GetJSON408 added in v0.2.0

func (r ListWebhooksResponse) GetJSON408() *ApiError

GetJSON408 returns the response for an HTTP 408 `application/json` response

func (ListWebhooksResponse) GetJSON423

func (r ListWebhooksResponse) GetJSON423() *ApiError

GetJSON423 returns the response for an HTTP 423 `application/json` response

func (ListWebhooksResponse) GetJSON429

func (r ListWebhooksResponse) GetJSON429() *ApiError

GetJSON429 returns the response for an HTTP 429 `application/json` response

func (ListWebhooksResponse) GetJSON500

func (r ListWebhooksResponse) GetJSON500() *ApiError

GetJSON500 returns the response for an HTTP 500 `application/json` response

func (ListWebhooksResponse) GetJSON503

func (r ListWebhooksResponse) GetJSON503() *ApiError

GetJSON503 returns the response for an HTTP 503 `application/json` response

func (ListWebhooksResponse) Status

func (r ListWebhooksResponse) Status() string

Status returns HTTPResponse.Status

func (ListWebhooksResponse) StatusCode

func (r ListWebhooksResponse) StatusCode() int

StatusCode returns HTTPResponse.StatusCode

type ListWebhooksResponse200Headers

type ListWebhooksResponse200Headers struct {
	RateLimitLimit      *int
	RateLimitRemaining  *int
	RateLimitReset      *int
	ServerTiming        *string
	XEffectiveQuery     *string
	XQueryIgnored       *string
	XRateLimitLimit     *int
	XRateLimitRemaining *int
	XRateLimitReset     *int
	XRequestId          *string
	XUsageAccounting    *string
}

ListWebhooksResponse200Headers the declared response headers of an HTTP 200 response for ListWebhooks

type ListWebhooksResponse429Headers

type ListWebhooksResponse429Headers struct {
	RateLimitLimit      *int
	RateLimitRemaining  *int
	RateLimitReset      *int
	RetryAfter          *int
	XRateLimitLimit     *int
	XRateLimitRemaining *int
	XRateLimitReset     *int
	XRequestId          *string
}

ListWebhooksResponse429Headers the declared response headers of an HTTP 429 response for ListWebhooks

type ListWebhooksResponse503Headers

type ListWebhooksResponse503Headers struct {
	RetryAfter *int
	XRequestId *string
}

ListWebhooksResponse503Headers the declared response headers of an HTTP 503 response for ListWebhooks

type ListWhaleTradeCounterpartyExecutions200JSONResponseBodyObject

type ListWhaleTradeCounterpartyExecutions200JSONResponseBodyObject string

ListWhaleTradeCounterpartyExecutions200JSONResponseBodyObject defines parameters for ListWhaleTradeCounterpartyExecutions.

const (
	ListWhaleTradeCounterpartyExecutions200JSONResponseBodyObjectCounterpartyAnalysis ListWhaleTradeCounterpartyExecutions200JSONResponseBodyObject = "counterparty_analysis"
)

Defines values for ListWhaleTradeCounterpartyExecutions200JSONResponseBodyObject.

func (ListWhaleTradeCounterpartyExecutions200JSONResponseBodyObject) Valid

Valid indicates whether the value is a known member of the ListWhaleTradeCounterpartyExecutions200JSONResponseBodyObject enum.

type ListWhaleTradeCounterpartyExecutionsParams

type ListWhaleTradeCounterpartyExecutionsParams struct {
	// SnapshotId Counterparty snapshot ID from the whale trade detail response.
	SnapshotId string `form:"snapshot_id" json:"snapshot_id"`

	// Cursor Opaque cursor from the previous response's next_cursor.
	Cursor *string `form:"cursor,omitempty" json:"cursor,omitempty"`

	// Limit Maximum number of counterparty execution rows to return. Out-of-range values are clamped to 1..100.
	Limit *int `form:"limit,omitempty" json:"limit,omitempty"`

	// XQueryValidation Opt into strict query-name validation. The default is compatible: unknown names are ignored and reported in X-Query-Ignored. With strict, an unknown name returns 400 bad_request with error.reason unknown_query_parameter before the handler runs, including when its percent escape is incomplete.
	XQueryValidation *ListWhaleTradeCounterpartyExecutionsParamsXQueryValidation `json:"X-Query-Validation,omitempty"`
}

ListWhaleTradeCounterpartyExecutionsParams defines parameters for ListWhaleTradeCounterpartyExecutions.

type ListWhaleTradeCounterpartyExecutionsParamsXQueryValidation added in v0.3.0

type ListWhaleTradeCounterpartyExecutionsParamsXQueryValidation string

ListWhaleTradeCounterpartyExecutionsParamsXQueryValidation defines parameters for ListWhaleTradeCounterpartyExecutions.

const (
	ListWhaleTradeCounterpartyExecutionsParamsXQueryValidationStrict ListWhaleTradeCounterpartyExecutionsParamsXQueryValidation = "strict"
)

Defines values for ListWhaleTradeCounterpartyExecutionsParamsXQueryValidation.

func (ListWhaleTradeCounterpartyExecutionsParamsXQueryValidation) Valid added in v0.3.0

Valid indicates whether the value is a known member of the ListWhaleTradeCounterpartyExecutionsParamsXQueryValidation enum.

type ListWhaleTradeCounterpartyExecutionsResponse

type ListWhaleTradeCounterpartyExecutionsResponse struct {
	Body         []byte
	HTTPResponse *http.Response
	// JSON200 the response for an HTTP 200 `application/json` response
	JSON200 *struct {
		Data   CounterpartyAnalysis                                          `json:"data"`
		Meta   ResponseMeta                                                  `json:"meta"`
		Object ListWhaleTradeCounterpartyExecutions200JSONResponseBodyObject `json:"object"`
	}
	// JSON400 the response for an HTTP 400 `application/json` response
	JSON400 *ApiError
	// JSON401 the response for an HTTP 401 `application/json` response
	JSON401 *ApiError
	// JSON402 the response for an HTTP 402 `application/json` response
	JSON402 *ApiError
	// JSON403 the response for an HTTP 403 `application/json` response
	JSON403 *ApiError
	// JSON404 the response for an HTTP 404 `application/json` response
	JSON404 *ApiError
	// JSON429 the response for an HTTP 429 `application/json` response
	JSON429 *ApiError
	// JSON500 the response for an HTTP 500 `application/json` response
	JSON500 *ApiError
	// JSON503 the response for an HTTP 503 `application/json` response
	JSON503 *ApiError
	// Headers200 the parsed response headers for an HTTP 200 response
	Headers200 *ListWhaleTradeCounterpartyExecutionsResponse200Headers
	// Headers304 the parsed response headers for an HTTP 304 response
	Headers304 *ListWhaleTradeCounterpartyExecutionsResponse304Headers
	// Headers429 the parsed response headers for an HTTP 429 response
	Headers429 *ListWhaleTradeCounterpartyExecutionsResponse429Headers
	// Headers503 the parsed response headers for an HTTP 503 response
	Headers503 *ListWhaleTradeCounterpartyExecutionsResponse503Headers
}

func ParseListWhaleTradeCounterpartyExecutionsResponse

func ParseListWhaleTradeCounterpartyExecutionsResponse(rsp *http.Response) (*ListWhaleTradeCounterpartyExecutionsResponse, error)

ParseListWhaleTradeCounterpartyExecutionsResponse parses an HTTP response from a ListWhaleTradeCounterpartyExecutionsWithResponse call

func (ListWhaleTradeCounterpartyExecutionsResponse) ContentType

ContentType is a convenience method to retrieve the Content-Type value from the HTTP response headers

func (ListWhaleTradeCounterpartyExecutionsResponse) GetBody

GetBody returns the raw response body bytes

func (ListWhaleTradeCounterpartyExecutionsResponse) GetJSON200

func (r ListWhaleTradeCounterpartyExecutionsResponse) GetJSON200() *struct {
	Data   CounterpartyAnalysis                                          `json:"data"`
	Meta   ResponseMeta                                                  `json:"meta"`
	Object ListWhaleTradeCounterpartyExecutions200JSONResponseBodyObject `json:"object"`
}

GetJSON200 returns the response for an HTTP 200 `application/json` response

func (ListWhaleTradeCounterpartyExecutionsResponse) GetJSON400

GetJSON400 returns the response for an HTTP 400 `application/json` response

func (ListWhaleTradeCounterpartyExecutionsResponse) GetJSON401

GetJSON401 returns the response for an HTTP 401 `application/json` response

func (ListWhaleTradeCounterpartyExecutionsResponse) GetJSON402

GetJSON402 returns the response for an HTTP 402 `application/json` response

func (ListWhaleTradeCounterpartyExecutionsResponse) GetJSON403

GetJSON403 returns the response for an HTTP 403 `application/json` response

func (ListWhaleTradeCounterpartyExecutionsResponse) GetJSON404

GetJSON404 returns the response for an HTTP 404 `application/json` response

func (ListWhaleTradeCounterpartyExecutionsResponse) GetJSON429

GetJSON429 returns the response for an HTTP 429 `application/json` response

func (ListWhaleTradeCounterpartyExecutionsResponse) GetJSON500 added in v0.4.0

GetJSON500 returns the response for an HTTP 500 `application/json` response

func (ListWhaleTradeCounterpartyExecutionsResponse) GetJSON503

GetJSON503 returns the response for an HTTP 503 `application/json` response

func (ListWhaleTradeCounterpartyExecutionsResponse) Status

Status returns HTTPResponse.Status

func (ListWhaleTradeCounterpartyExecutionsResponse) StatusCode

StatusCode returns HTTPResponse.StatusCode

type ListWhaleTradeCounterpartyExecutionsResponse200Headers

type ListWhaleTradeCounterpartyExecutionsResponse200Headers struct {
	Deprecation         *string
	ETag                *string
	Link                *string
	RateLimitLimit      *int
	RateLimitRemaining  *int
	RateLimitReset      *int
	ServerTiming        *string
	XRateLimitLimit     *int
	XRateLimitRemaining *int
	XRateLimitReset     *int
	XRequestId          *string
	XUsageAccounting    *string
}

ListWhaleTradeCounterpartyExecutionsResponse200Headers the declared response headers of an HTTP 200 response for ListWhaleTradeCounterpartyExecutions

type ListWhaleTradeCounterpartyExecutionsResponse304Headers added in v0.2.0

type ListWhaleTradeCounterpartyExecutionsResponse304Headers struct {
	ETag                *string
	RateLimitLimit      *int
	RateLimitRemaining  *int
	RateLimitReset      *int
	ServerTiming        *string
	XRateLimitLimit     *int
	XRateLimitRemaining *int
	XRateLimitReset     *int
	XRequestId          *string
	XUsageAccounting    *string
}

ListWhaleTradeCounterpartyExecutionsResponse304Headers the declared response headers of an HTTP 304 response for ListWhaleTradeCounterpartyExecutions

type ListWhaleTradeCounterpartyExecutionsResponse429Headers

type ListWhaleTradeCounterpartyExecutionsResponse429Headers struct {
	RateLimitLimit      *int
	RateLimitRemaining  *int
	RateLimitReset      *int
	RetryAfter          *int
	XRateLimitLimit     *int
	XRateLimitRemaining *int
	XRateLimitReset     *int
	XRequestId          *string
}

ListWhaleTradeCounterpartyExecutionsResponse429Headers the declared response headers of an HTTP 429 response for ListWhaleTradeCounterpartyExecutions

type ListWhaleTradeCounterpartyExecutionsResponse503Headers

type ListWhaleTradeCounterpartyExecutionsResponse503Headers struct {
	RetryAfter *int
	XRequestId *string
}

ListWhaleTradeCounterpartyExecutionsResponse503Headers the declared response headers of an HTTP 503 response for ListWhaleTradeCounterpartyExecutions

type ListWhaleTradeCounterpartyMakers200JSONResponseBodyObject

type ListWhaleTradeCounterpartyMakers200JSONResponseBodyObject string

ListWhaleTradeCounterpartyMakers200JSONResponseBodyObject defines parameters for ListWhaleTradeCounterpartyMakers.

const (
	ListWhaleTradeCounterpartyMakers200JSONResponseBodyObjectCounterpartyMakerPage ListWhaleTradeCounterpartyMakers200JSONResponseBodyObject = "counterparty_maker_page"
)

Defines values for ListWhaleTradeCounterpartyMakers200JSONResponseBodyObject.

func (ListWhaleTradeCounterpartyMakers200JSONResponseBodyObject) Valid

Valid indicates whether the value is a known member of the ListWhaleTradeCounterpartyMakers200JSONResponseBodyObject enum.

type ListWhaleTradeCounterpartyMakersParams

type ListWhaleTradeCounterpartyMakersParams struct {
	// SnapshotId Counterparty snapshot ID from the whale trade detail response.
	SnapshotId string `form:"snapshot_id" json:"snapshot_id"`

	// Cursor Opaque cursor from the previous response's next_cursor.
	Cursor *string `form:"cursor,omitempty" json:"cursor,omitempty"`

	// Limit Maximum number of maker rows to return. Out-of-range values are clamped to 1..100.
	Limit *int `form:"limit,omitempty" json:"limit,omitempty"`
}

ListWhaleTradeCounterpartyMakersParams defines parameters for ListWhaleTradeCounterpartyMakers.

type ListWhaleTradeCounterpartyMakersResponse

type ListWhaleTradeCounterpartyMakersResponse struct {
	Body         []byte
	HTTPResponse *http.Response
	// JSON200 the response for an HTTP 200 `application/json` response
	JSON200 *struct {
		Data   CounterpartyMakerPage                                     `json:"data"`
		Meta   ResponseMeta                                              `json:"meta"`
		Object ListWhaleTradeCounterpartyMakers200JSONResponseBodyObject `json:"object"`
	}
	// JSON400 the response for an HTTP 400 `application/json` response
	JSON400 *ApiError
	// JSON401 the response for an HTTP 401 `application/json` response
	JSON401 *ApiError
	// JSON402 the response for an HTTP 402 `application/json` response
	JSON402 *ApiError
	// JSON403 the response for an HTTP 403 `application/json` response
	JSON403 *ApiError
	// JSON404 the response for an HTTP 404 `application/json` response
	JSON404 *ApiError
	// JSON429 the response for an HTTP 429 `application/json` response
	JSON429 *ApiError
	// JSON500 the response for an HTTP 500 `application/json` response
	JSON500 *ApiError
	// JSON503 the response for an HTTP 503 `application/json` response
	JSON503 *ApiError
	// Headers200 the parsed response headers for an HTTP 200 response
	Headers200 *ListWhaleTradeCounterpartyMakersResponse200Headers
	// Headers304 the parsed response headers for an HTTP 304 response
	Headers304 *ListWhaleTradeCounterpartyMakersResponse304Headers
	// Headers429 the parsed response headers for an HTTP 429 response
	Headers429 *ListWhaleTradeCounterpartyMakersResponse429Headers
	// Headers503 the parsed response headers for an HTTP 503 response
	Headers503 *ListWhaleTradeCounterpartyMakersResponse503Headers
}

func ParseListWhaleTradeCounterpartyMakersResponse

func ParseListWhaleTradeCounterpartyMakersResponse(rsp *http.Response) (*ListWhaleTradeCounterpartyMakersResponse, error)

ParseListWhaleTradeCounterpartyMakersResponse parses an HTTP response from a ListWhaleTradeCounterpartyMakersWithResponse call

func (ListWhaleTradeCounterpartyMakersResponse) ContentType

ContentType is a convenience method to retrieve the Content-Type value from the HTTP response headers

func (ListWhaleTradeCounterpartyMakersResponse) GetBody

GetBody returns the raw response body bytes

func (ListWhaleTradeCounterpartyMakersResponse) GetJSON200

func (r ListWhaleTradeCounterpartyMakersResponse) GetJSON200() *struct {
	Data   CounterpartyMakerPage                                     `json:"data"`
	Meta   ResponseMeta                                              `json:"meta"`
	Object ListWhaleTradeCounterpartyMakers200JSONResponseBodyObject `json:"object"`
}

GetJSON200 returns the response for an HTTP 200 `application/json` response

func (ListWhaleTradeCounterpartyMakersResponse) GetJSON400

GetJSON400 returns the response for an HTTP 400 `application/json` response

func (ListWhaleTradeCounterpartyMakersResponse) GetJSON401

GetJSON401 returns the response for an HTTP 401 `application/json` response

func (ListWhaleTradeCounterpartyMakersResponse) GetJSON402

GetJSON402 returns the response for an HTTP 402 `application/json` response

func (ListWhaleTradeCounterpartyMakersResponse) GetJSON403

GetJSON403 returns the response for an HTTP 403 `application/json` response

func (ListWhaleTradeCounterpartyMakersResponse) GetJSON404

GetJSON404 returns the response for an HTTP 404 `application/json` response

func (ListWhaleTradeCounterpartyMakersResponse) GetJSON429

GetJSON429 returns the response for an HTTP 429 `application/json` response

func (ListWhaleTradeCounterpartyMakersResponse) GetJSON500 added in v0.4.0

GetJSON500 returns the response for an HTTP 500 `application/json` response

func (ListWhaleTradeCounterpartyMakersResponse) GetJSON503

GetJSON503 returns the response for an HTTP 503 `application/json` response

func (ListWhaleTradeCounterpartyMakersResponse) Status

Status returns HTTPResponse.Status

func (ListWhaleTradeCounterpartyMakersResponse) StatusCode

StatusCode returns HTTPResponse.StatusCode

type ListWhaleTradeCounterpartyMakersResponse200Headers

type ListWhaleTradeCounterpartyMakersResponse200Headers struct {
	Deprecation         *string
	ETag                *string
	Link                *string
	RateLimitLimit      *int
	RateLimitRemaining  *int
	RateLimitReset      *int
	ServerTiming        *string
	XRateLimitLimit     *int
	XRateLimitRemaining *int
	XRateLimitReset     *int
	XRequestId          *string
	XUsageAccounting    *string
}

ListWhaleTradeCounterpartyMakersResponse200Headers the declared response headers of an HTTP 200 response for ListWhaleTradeCounterpartyMakers

type ListWhaleTradeCounterpartyMakersResponse304Headers added in v0.2.0

type ListWhaleTradeCounterpartyMakersResponse304Headers struct {
	ETag                *string
	RateLimitLimit      *int
	RateLimitRemaining  *int
	RateLimitReset      *int
	ServerTiming        *string
	XRateLimitLimit     *int
	XRateLimitRemaining *int
	XRateLimitReset     *int
	XRequestId          *string
	XUsageAccounting    *string
}

ListWhaleTradeCounterpartyMakersResponse304Headers the declared response headers of an HTTP 304 response for ListWhaleTradeCounterpartyMakers

type ListWhaleTradeCounterpartyMakersResponse429Headers

type ListWhaleTradeCounterpartyMakersResponse429Headers struct {
	RateLimitLimit      *int
	RateLimitRemaining  *int
	RateLimitReset      *int
	RetryAfter          *int
	XRateLimitLimit     *int
	XRateLimitRemaining *int
	XRateLimitReset     *int
	XRequestId          *string
}

ListWhaleTradeCounterpartyMakersResponse429Headers the declared response headers of an HTTP 429 response for ListWhaleTradeCounterpartyMakers

type ListWhaleTradeCounterpartyMakersResponse503Headers

type ListWhaleTradeCounterpartyMakersResponse503Headers struct {
	RetryAfter *int
	XRequestId *string
}

ListWhaleTradeCounterpartyMakersResponse503Headers the declared response headers of an HTTP 503 response for ListWhaleTradeCounterpartyMakers

type ListWhaleTradeHistory200JSONResponseBodyObject

type ListWhaleTradeHistory200JSONResponseBodyObject string

ListWhaleTradeHistory200JSONResponseBodyObject defines parameters for ListWhaleTradeHistory.

const (
	ListWhaleTradeHistory200JSONResponseBodyObjectList ListWhaleTradeHistory200JSONResponseBodyObject = "list"
)

Defines values for ListWhaleTradeHistory200JSONResponseBodyObject.

func (ListWhaleTradeHistory200JSONResponseBodyObject) Valid

Valid indicates whether the value is a known member of the ListWhaleTradeHistory200JSONResponseBodyObject enum.

type ListWhaleTradeHistoryParams

type ListWhaleTradeHistoryParams struct {
	// Limit Maximum number of historical large trades to return. Out-of-range values are clamped to 1..100.
	Limit *int `form:"limit,omitempty" json:"limit,omitempty"`

	// Cursor Pagination cursor from previous response's next_cursor. Prefix: wth_. URL-encode when replaying as a query parameter.
	Cursor *string `form:"cursor,omitempty" json:"cursor,omitempty"`

	// MinSize Minimum trade size in USD.
	MinSize *float32 `form:"min_size,omitempty" json:"min_size,omitempty"`

	// ConditionId Exact raw provider condition_id. Unknown markets return an empty list.
	ConditionId *string `form:"condition_id,omitempty" json:"condition_id,omitempty"`

	// Trader Trader wallet address, timestamp-suffixed wallet alias, or username resolved against the traders table. Unknown traders return an empty list.
	Trader *string `form:"trader,omitempty" json:"trader,omitempty"`

	// Category Filter by market category (case-insensitive). A canonical bucket name (e.g. Basketball) matches every provider member that folds into it (NBA, WNBA, NCAAB); a raw provider value also resolves to its bucket.
	Category *string `form:"category,omitempty" json:"category,omitempty"`

	// MinGrade Minimum trader grade.
	MinGrade *ListWhaleTradeHistoryParamsMinGrade `form:"min_grade,omitempty" json:"min_grade,omitempty"`

	// SuspiciousOnly When true, return only rows with persisted suspicion_score >= 60. The filter is applied before SQL-backed limit + 1 pagination.
	SuspiciousOnly *bool `form:"suspicious_only,omitempty" json:"suspicious_only,omitempty"`

	// Platform Filter by whale_alerts.platform. all is equivalent to omitted.
	Platform *ListWhaleTradeHistoryParamsPlatform `form:"platform,omitempty" json:"platform,omitempty"`

	// From Inclusive RFC3339 lower bound on whale_alerts.traded_at.
	From *time.Time `form:"from,omitempty" json:"from,omitempty"`

	// To Exclusive RFC3339 upper bound on whale_alerts.traded_at. Must be after from when both are present.
	To *time.Time `form:"to,omitempty" json:"to,omitempty"`

	// MinMarketVolumeShare Keep only trades whose market_volume_share is known and at least this. A fraction, not a percent: 0.01 is one percent of the market's traded volume. A trade whose share is unavailable is never returned by a non-zero value, because an unavailable share cannot be said to clear a floor.
	MinMarketVolumeShare *float32 `form:"min_market_volume_share,omitempty" json:"min_market_volume_share,omitempty"`

	// Sort Order of the returned page. recent is newest first and is the default. market_volume_share ranks by each trade's share of its market's traded volume, biggest first, with a trade whose share is unavailable last. That ranking reads from, or the last 30 days when from is omitted, for the same reason. A cursor is bound to the order it was minted in, so a continuation cannot cross from one order into the other.
	Sort *ListWhaleTradeHistoryParamsSort `form:"sort,omitempty" json:"sort,omitempty"`

	// IfNoneMatch Conditional GET validator from a previous ETag. Matching values return 304 Not Modified with an empty body.
	IfNoneMatch *string `json:"If-None-Match,omitempty"`
}

ListWhaleTradeHistoryParams defines parameters for ListWhaleTradeHistory.

type ListWhaleTradeHistoryParamsMinGrade

type ListWhaleTradeHistoryParamsMinGrade string

ListWhaleTradeHistoryParamsMinGrade defines parameters for ListWhaleTradeHistory.

const (
	ListWhaleTradeHistoryParamsMinGradeA ListWhaleTradeHistoryParamsMinGrade = "A"
	ListWhaleTradeHistoryParamsMinGradeB ListWhaleTradeHistoryParamsMinGrade = "B"
	ListWhaleTradeHistoryParamsMinGradeC ListWhaleTradeHistoryParamsMinGrade = "C"
	ListWhaleTradeHistoryParamsMinGradeD ListWhaleTradeHistoryParamsMinGrade = "D"
	ListWhaleTradeHistoryParamsMinGradeF ListWhaleTradeHistoryParamsMinGrade = "F"
	ListWhaleTradeHistoryParamsMinGradeS ListWhaleTradeHistoryParamsMinGrade = "S"
)

Defines values for ListWhaleTradeHistoryParamsMinGrade.

func (ListWhaleTradeHistoryParamsMinGrade) Valid

Valid indicates whether the value is a known member of the ListWhaleTradeHistoryParamsMinGrade enum.

type ListWhaleTradeHistoryParamsPlatform

type ListWhaleTradeHistoryParamsPlatform string

ListWhaleTradeHistoryParamsPlatform defines parameters for ListWhaleTradeHistory.

const (
	ListWhaleTradeHistoryParamsPlatformAll        ListWhaleTradeHistoryParamsPlatform = "all"
	ListWhaleTradeHistoryParamsPlatformPolymarket ListWhaleTradeHistoryParamsPlatform = "polymarket"
)

Defines values for ListWhaleTradeHistoryParamsPlatform.

func (ListWhaleTradeHistoryParamsPlatform) Valid

Valid indicates whether the value is a known member of the ListWhaleTradeHistoryParamsPlatform enum.

type ListWhaleTradeHistoryParamsSort added in v0.4.0

type ListWhaleTradeHistoryParamsSort string

ListWhaleTradeHistoryParamsSort defines parameters for ListWhaleTradeHistory.

const (
	ListWhaleTradeHistoryParamsSortMarketVolumeShare ListWhaleTradeHistoryParamsSort = "market_volume_share"
	ListWhaleTradeHistoryParamsSortRecent            ListWhaleTradeHistoryParamsSort = "recent"
)

Defines values for ListWhaleTradeHistoryParamsSort.

func (ListWhaleTradeHistoryParamsSort) Valid added in v0.4.0

Valid indicates whether the value is a known member of the ListWhaleTradeHistoryParamsSort enum.

type ListWhaleTradeHistoryResponse

type ListWhaleTradeHistoryResponse struct {
	Body         []byte
	HTTPResponse *http.Response
	// JSON200 the response for an HTTP 200 `application/json` response
	JSON200 *struct {
		Data []LargeTrade `json:"data"`

		// DataQuality Writer-backed age and coverage for this page; it is part of the representation and the ETag, while transport cache facts remain in meta.
		DataQuality DataQuality                                    `json:"data_quality"`
		HasMore     bool                                           `json:"has_more"`
		Meta        LargeTradeHistoryMeta                          `json:"meta"`
		NextCursor  *string                                        `json:"next_cursor,omitempty"`
		Object      ListWhaleTradeHistory200JSONResponseBodyObject `json:"object"`

		// Total Total matching rows when the read model exposes a count; absent (or null) when it does not.
		Total *int `json:"total,omitempty"`
	}
	// JSON400 the response for an HTTP 400 `application/json` response
	JSON400 *ApiError
	// JSON401 the response for an HTTP 401 `application/json` response
	JSON401 *ApiError
	// JSON402 the response for an HTTP 402 `application/json` response
	JSON402 *ApiError
	// JSON403 the response for an HTTP 403 `application/json` response
	JSON403 *ApiError
	// JSON408 the response for an HTTP 408 `application/json` response
	JSON408 *ApiError
	// JSON423 the response for an HTTP 423 `application/json` response
	JSON423 *ApiError
	// JSON429 the response for an HTTP 429 `application/json` response
	JSON429 *ApiError
	// JSON500 the response for an HTTP 500 `application/json` response
	JSON500 *ApiError
	// JSON503 the response for an HTTP 503 `application/json` response
	JSON503 *ApiError
	// Headers200 the parsed response headers for an HTTP 200 response
	Headers200 *ListWhaleTradeHistoryResponse200Headers
	// Headers304 the parsed response headers for an HTTP 304 response
	Headers304 *ListWhaleTradeHistoryResponse304Headers
	// Headers429 the parsed response headers for an HTTP 429 response
	Headers429 *ListWhaleTradeHistoryResponse429Headers
	// Headers503 the parsed response headers for an HTTP 503 response
	Headers503 *ListWhaleTradeHistoryResponse503Headers
}

func ParseListWhaleTradeHistoryResponse

func ParseListWhaleTradeHistoryResponse(rsp *http.Response) (*ListWhaleTradeHistoryResponse, error)

ParseListWhaleTradeHistoryResponse parses an HTTP response from a ListWhaleTradeHistoryWithResponse call

func (ListWhaleTradeHistoryResponse) ContentType

func (r ListWhaleTradeHistoryResponse) ContentType() string

ContentType is a convenience method to retrieve the Content-Type value from the HTTP response headers

func (ListWhaleTradeHistoryResponse) GetBody

func (r ListWhaleTradeHistoryResponse) GetBody() []byte

GetBody returns the raw response body bytes

func (ListWhaleTradeHistoryResponse) GetJSON200

func (r ListWhaleTradeHistoryResponse) GetJSON200() *struct {
	Data []LargeTrade `json:"data"`

	// DataQuality Writer-backed age and coverage for this page; it is part of the representation and the ETag, while transport cache facts remain in meta.
	DataQuality DataQuality                                    `json:"data_quality"`
	HasMore     bool                                           `json:"has_more"`
	Meta        LargeTradeHistoryMeta                          `json:"meta"`
	NextCursor  *string                                        `json:"next_cursor,omitempty"`
	Object      ListWhaleTradeHistory200JSONResponseBodyObject `json:"object"`

	// Total Total matching rows when the read model exposes a count; absent (or null) when it does not.
	Total *int `json:"total,omitempty"`
}

GetJSON200 returns the response for an HTTP 200 `application/json` response

func (ListWhaleTradeHistoryResponse) GetJSON400

func (r ListWhaleTradeHistoryResponse) GetJSON400() *ApiError

GetJSON400 returns the response for an HTTP 400 `application/json` response

func (ListWhaleTradeHistoryResponse) GetJSON401

func (r ListWhaleTradeHistoryResponse) GetJSON401() *ApiError

GetJSON401 returns the response for an HTTP 401 `application/json` response

func (ListWhaleTradeHistoryResponse) GetJSON402

func (r ListWhaleTradeHistoryResponse) GetJSON402() *ApiError

GetJSON402 returns the response for an HTTP 402 `application/json` response

func (ListWhaleTradeHistoryResponse) GetJSON403

func (r ListWhaleTradeHistoryResponse) GetJSON403() *ApiError

GetJSON403 returns the response for an HTTP 403 `application/json` response

func (ListWhaleTradeHistoryResponse) GetJSON408 added in v0.2.0

func (r ListWhaleTradeHistoryResponse) GetJSON408() *ApiError

GetJSON408 returns the response for an HTTP 408 `application/json` response

func (ListWhaleTradeHistoryResponse) GetJSON423

func (r ListWhaleTradeHistoryResponse) GetJSON423() *ApiError

GetJSON423 returns the response for an HTTP 423 `application/json` response

func (ListWhaleTradeHistoryResponse) GetJSON429

func (r ListWhaleTradeHistoryResponse) GetJSON429() *ApiError

GetJSON429 returns the response for an HTTP 429 `application/json` response

func (ListWhaleTradeHistoryResponse) GetJSON500 added in v0.4.0

func (r ListWhaleTradeHistoryResponse) GetJSON500() *ApiError

GetJSON500 returns the response for an HTTP 500 `application/json` response

func (ListWhaleTradeHistoryResponse) GetJSON503

func (r ListWhaleTradeHistoryResponse) GetJSON503() *ApiError

GetJSON503 returns the response for an HTTP 503 `application/json` response

func (ListWhaleTradeHistoryResponse) Status

Status returns HTTPResponse.Status

func (ListWhaleTradeHistoryResponse) StatusCode

func (r ListWhaleTradeHistoryResponse) StatusCode() int

StatusCode returns HTTPResponse.StatusCode

type ListWhaleTradeHistoryResponse200Headers

type ListWhaleTradeHistoryResponse200Headers struct {
	Deprecation         *string
	ETag                *string
	Link                *string
	RateLimitLimit      *int
	RateLimitRemaining  *int
	RateLimitReset      *int
	ServerTiming        *string
	XRateLimitLimit     *int
	XRateLimitRemaining *int
	XRateLimitReset     *int
	XRequestId          *string
	XUsageAccounting    *string
}

ListWhaleTradeHistoryResponse200Headers the declared response headers of an HTTP 200 response for ListWhaleTradeHistory

type ListWhaleTradeHistoryResponse304Headers

type ListWhaleTradeHistoryResponse304Headers struct {
	ETag                *string
	RateLimitLimit      *int
	RateLimitRemaining  *int
	RateLimitReset      *int
	ServerTiming        *string
	XRateLimitLimit     *int
	XRateLimitRemaining *int
	XRateLimitReset     *int
	XRequestId          *string
	XUsageAccounting    *string
}

ListWhaleTradeHistoryResponse304Headers the declared response headers of an HTTP 304 response for ListWhaleTradeHistory

type ListWhaleTradeHistoryResponse429Headers

type ListWhaleTradeHistoryResponse429Headers struct {
	RateLimitLimit      *int
	RateLimitRemaining  *int
	RateLimitReset      *int
	RetryAfter          *int
	XRateLimitLimit     *int
	XRateLimitRemaining *int
	XRateLimitReset     *int
	XRequestId          *string
}

ListWhaleTradeHistoryResponse429Headers the declared response headers of an HTTP 429 response for ListWhaleTradeHistory

type ListWhaleTradeHistoryResponse503Headers

type ListWhaleTradeHistoryResponse503Headers struct {
	RetryAfter *int
	XRequestId *string
}

ListWhaleTradeHistoryResponse503Headers the declared response headers of an HTTP 503 response for ListWhaleTradeHistory

type ListWhaleTrades200JSONResponseBodyObject

type ListWhaleTrades200JSONResponseBodyObject string

ListWhaleTrades200JSONResponseBodyObject defines parameters for ListWhaleTrades.

const (
	ListWhaleTrades200JSONResponseBodyObjectList ListWhaleTrades200JSONResponseBodyObject = "list"
)

Defines values for ListWhaleTrades200JSONResponseBodyObject.

func (ListWhaleTrades200JSONResponseBodyObject) Valid

Valid indicates whether the value is a known member of the ListWhaleTrades200JSONResponseBodyObject enum.

type ListWhaleTradesParams

type ListWhaleTradesParams struct {
	// Limit Maximum number of recent large trades to return. Out-of-range values are clamped to 1..100.
	Limit *int `form:"limit,omitempty" json:"limit,omitempty"`

	// Cursor Pagination cursor from previous response's next_cursor.
	Cursor *string `form:"cursor,omitempty" json:"cursor,omitempty"`

	// MinSize Minimum trade size in USD.
	MinSize *float32 `form:"min_size,omitempty" json:"min_size,omitempty"`

	// Category Filter by market category (case-insensitive). A canonical bucket name (e.g. Basketball) matches every provider member that folds into it (NBA, WNBA, NCAAB); a raw provider value also resolves to its bucket.
	Category *string `form:"category,omitempty" json:"category,omitempty"`

	// MinGrade Minimum trader grade as of today (trader.grade). A means S or A, B means S, A or B.
	MinGrade *ListWhaleTradesParamsMinGrade `form:"min_grade,omitempty" json:"min_grade,omitempty"`

	// SuspiciousOnly When true, return only rows with persisted suspicion_score >= 60. The filter is applied before SQL-backed limit + 1 pagination.
	SuspiciousOnly *bool `form:"suspicious_only,omitempty" json:"suspicious_only,omitempty"`

	// MinMarketVolumeShare Keep only trades whose market_volume_share is known and at least this. A fraction, not a percent: 0.01 is one percent of the market's traded volume. A trade whose share is unavailable is never returned by a non-zero value, because an unavailable share cannot be said to clear a floor.
	MinMarketVolumeShare *float32 `form:"min_market_volume_share,omitempty" json:"min_market_volume_share,omitempty"`

	// Sort Order of the returned page. recent is newest first and is the default. market_volume_share ranks by each trade's share of its market's traded volume, biggest first, with a trade whose share is unavailable last. That ranking reads the last 30 days, because the share is computed for each request and an unbounded ranking cannot be served inside the documented latency budget. A cursor is bound to the order it was minted in, so a continuation cannot cross from one order into the other.
	Sort *ListWhaleTradesParamsSort `form:"sort,omitempty" json:"sort,omitempty"`

	// Since Return only the trades recorded after this one. Pass the id of a large trade this API returned (wt_<n>, or the bare integer). The answer keeps the list shape and newest-first order, and next_cursor pages within it. After means commit order: a trade recorded late with an earlier traded_at is still returned, and a trade whose write has not committed yet is returned on a later poll, never skipped. To poll, send the id of the first trade on the first page of your last answer that had trades, with If-None-Match set to the ETag you last received; when nothing new was recorded the answer is 304 with an empty body. A late trade can come back once, so deduplicate on id. Only with sort=recent. An id that names no trade, or one more than 10000 trades behind the newest, answers 400 with error.param since; request the list without since and continue from its first trade.
	Since *string `form:"since,omitempty" json:"since,omitempty"`

	// XQueryValidation Opt into strict query-name validation. The default is compatible: unknown names are ignored and reported in X-Query-Ignored. With strict, an unknown name returns 400 bad_request with error.reason unknown_query_parameter before the handler runs, including when its percent escape is incomplete.
	XQueryValidation *ListWhaleTradesParamsXQueryValidation `json:"X-Query-Validation,omitempty"`

	// IfNoneMatch Conditional GET validator from a previous ETag. Matching values return 304 Not Modified with an empty body.
	IfNoneMatch *string `json:"If-None-Match,omitempty"`
}

ListWhaleTradesParams defines parameters for ListWhaleTrades.

type ListWhaleTradesParamsMinGrade

type ListWhaleTradesParamsMinGrade string

ListWhaleTradesParamsMinGrade defines parameters for ListWhaleTrades.

const (
	ListWhaleTradesParamsMinGradeA ListWhaleTradesParamsMinGrade = "A"
	ListWhaleTradesParamsMinGradeB ListWhaleTradesParamsMinGrade = "B"
	ListWhaleTradesParamsMinGradeC ListWhaleTradesParamsMinGrade = "C"
	ListWhaleTradesParamsMinGradeD ListWhaleTradesParamsMinGrade = "D"
	ListWhaleTradesParamsMinGradeF ListWhaleTradesParamsMinGrade = "F"
	ListWhaleTradesParamsMinGradeS ListWhaleTradesParamsMinGrade = "S"
)

Defines values for ListWhaleTradesParamsMinGrade.

func (ListWhaleTradesParamsMinGrade) Valid

Valid indicates whether the value is a known member of the ListWhaleTradesParamsMinGrade enum.

type ListWhaleTradesParamsSort added in v0.4.0

type ListWhaleTradesParamsSort string

ListWhaleTradesParamsSort defines parameters for ListWhaleTrades.

const (
	ListWhaleTradesParamsSortMarketVolumeShare ListWhaleTradesParamsSort = "market_volume_share"
	ListWhaleTradesParamsSortRecent            ListWhaleTradesParamsSort = "recent"
)

Defines values for ListWhaleTradesParamsSort.

func (ListWhaleTradesParamsSort) Valid added in v0.4.0

func (e ListWhaleTradesParamsSort) Valid() bool

Valid indicates whether the value is a known member of the ListWhaleTradesParamsSort enum.

type ListWhaleTradesParamsXQueryValidation added in v0.3.0

type ListWhaleTradesParamsXQueryValidation string

ListWhaleTradesParamsXQueryValidation defines parameters for ListWhaleTrades.

const (
	ListWhaleTradesParamsXQueryValidationStrict ListWhaleTradesParamsXQueryValidation = "strict"
)

Defines values for ListWhaleTradesParamsXQueryValidation.

func (ListWhaleTradesParamsXQueryValidation) Valid added in v0.3.0

Valid indicates whether the value is a known member of the ListWhaleTradesParamsXQueryValidation enum.

type ListWhaleTradesResponse

type ListWhaleTradesResponse struct {
	Body         []byte
	HTTPResponse *http.Response
	// JSON200 the response for an HTTP 200 `application/json` response
	JSON200 *struct {
		Data []LargeTrade `json:"data"`

		// DataQuality Writer-backed age and coverage for this page; it is part of the representation and the ETag, while transport cache facts remain in meta.
		DataQuality DataQuality                              `json:"data_quality"`
		HasMore     bool                                     `json:"has_more"`
		Meta        ResponseMeta                             `json:"meta"`
		NextCursor  *string                                  `json:"next_cursor,omitempty"`
		Object      ListWhaleTrades200JSONResponseBodyObject `json:"object"`

		// Total Total matching rows when the read model exposes a count; the key is absent when it does not.
		Total *int `json:"total,omitempty"`
	}
	// JSON400 the response for an HTTP 400 `application/json` response
	JSON400 *ApiError
	// JSON401 the response for an HTTP 401 `application/json` response
	JSON401 *ApiError
	// JSON402 the response for an HTTP 402 `application/json` response
	JSON402 *ApiError
	// JSON403 the response for an HTTP 403 `application/json` response
	JSON403 *ApiError
	// JSON408 the response for an HTTP 408 `application/json` response
	JSON408 *ApiError
	// JSON423 the response for an HTTP 423 `application/json` response
	JSON423 *ApiError
	// JSON429 the response for an HTTP 429 `application/json` response
	JSON429 *ApiError
	// JSON500 the response for an HTTP 500 `application/json` response
	JSON500 *ApiError
	// JSON503 the response for an HTTP 503 `application/json` response
	JSON503 *ApiError
	// Headers200 the parsed response headers for an HTTP 200 response
	Headers200 *ListWhaleTradesResponse200Headers
	// Headers304 the parsed response headers for an HTTP 304 response
	Headers304 *ListWhaleTradesResponse304Headers
	// Headers429 the parsed response headers for an HTTP 429 response
	Headers429 *ListWhaleTradesResponse429Headers
	// Headers503 the parsed response headers for an HTTP 503 response
	Headers503 *ListWhaleTradesResponse503Headers
}

func ParseListWhaleTradesResponse

func ParseListWhaleTradesResponse(rsp *http.Response) (*ListWhaleTradesResponse, error)

ParseListWhaleTradesResponse parses an HTTP response from a ListWhaleTradesWithResponse call

func (ListWhaleTradesResponse) ContentType

func (r ListWhaleTradesResponse) ContentType() string

ContentType is a convenience method to retrieve the Content-Type value from the HTTP response headers

func (ListWhaleTradesResponse) GetBody

func (r ListWhaleTradesResponse) GetBody() []byte

GetBody returns the raw response body bytes

func (ListWhaleTradesResponse) GetJSON200

func (r ListWhaleTradesResponse) GetJSON200() *struct {
	Data []LargeTrade `json:"data"`

	// DataQuality Writer-backed age and coverage for this page; it is part of the representation and the ETag, while transport cache facts remain in meta.
	DataQuality DataQuality                              `json:"data_quality"`
	HasMore     bool                                     `json:"has_more"`
	Meta        ResponseMeta                             `json:"meta"`
	NextCursor  *string                                  `json:"next_cursor,omitempty"`
	Object      ListWhaleTrades200JSONResponseBodyObject `json:"object"`

	// Total Total matching rows when the read model exposes a count; the key is absent when it does not.
	Total *int `json:"total,omitempty"`
}

GetJSON200 returns the response for an HTTP 200 `application/json` response

func (ListWhaleTradesResponse) GetJSON400

func (r ListWhaleTradesResponse) GetJSON400() *ApiError

GetJSON400 returns the response for an HTTP 400 `application/json` response

func (ListWhaleTradesResponse) GetJSON401

func (r ListWhaleTradesResponse) GetJSON401() *ApiError

GetJSON401 returns the response for an HTTP 401 `application/json` response

func (ListWhaleTradesResponse) GetJSON402

func (r ListWhaleTradesResponse) GetJSON402() *ApiError

GetJSON402 returns the response for an HTTP 402 `application/json` response

func (ListWhaleTradesResponse) GetJSON403

func (r ListWhaleTradesResponse) GetJSON403() *ApiError

GetJSON403 returns the response for an HTTP 403 `application/json` response

func (ListWhaleTradesResponse) GetJSON408 added in v0.2.0

func (r ListWhaleTradesResponse) GetJSON408() *ApiError

GetJSON408 returns the response for an HTTP 408 `application/json` response

func (ListWhaleTradesResponse) GetJSON423

func (r ListWhaleTradesResponse) GetJSON423() *ApiError

GetJSON423 returns the response for an HTTP 423 `application/json` response

func (ListWhaleTradesResponse) GetJSON429

func (r ListWhaleTradesResponse) GetJSON429() *ApiError

GetJSON429 returns the response for an HTTP 429 `application/json` response

func (ListWhaleTradesResponse) GetJSON500 added in v0.4.0

func (r ListWhaleTradesResponse) GetJSON500() *ApiError

GetJSON500 returns the response for an HTTP 500 `application/json` response

func (ListWhaleTradesResponse) GetJSON503

func (r ListWhaleTradesResponse) GetJSON503() *ApiError

GetJSON503 returns the response for an HTTP 503 `application/json` response

func (ListWhaleTradesResponse) Status

func (r ListWhaleTradesResponse) Status() string

Status returns HTTPResponse.Status

func (ListWhaleTradesResponse) StatusCode

func (r ListWhaleTradesResponse) StatusCode() int

StatusCode returns HTTPResponse.StatusCode

type ListWhaleTradesResponse200Headers

type ListWhaleTradesResponse200Headers struct {
	Deprecation         *string
	ETag                *string
	Link                *string
	RateLimitLimit      *int
	RateLimitRemaining  *int
	RateLimitReset      *int
	ServerTiming        *string
	XEffectiveQuery     *string
	XQueryIgnored       *string
	XRateLimitLimit     *int
	XRateLimitRemaining *int
	XRateLimitReset     *int
	XRequestId          *string
	XUsageAccounting    *string
}

ListWhaleTradesResponse200Headers the declared response headers of an HTTP 200 response for ListWhaleTrades

type ListWhaleTradesResponse304Headers

type ListWhaleTradesResponse304Headers struct {
	ETag                *string
	RateLimitLimit      *int
	RateLimitRemaining  *int
	RateLimitReset      *int
	ServerTiming        *string
	XEffectiveQuery     *string
	XQueryIgnored       *string
	XRateLimitLimit     *int
	XRateLimitRemaining *int
	XRateLimitReset     *int
	XRequestId          *string
	XUsageAccounting    *string
}

ListWhaleTradesResponse304Headers the declared response headers of an HTTP 304 response for ListWhaleTrades

type ListWhaleTradesResponse429Headers

type ListWhaleTradesResponse429Headers struct {
	RateLimitLimit      *int
	RateLimitRemaining  *int
	RateLimitReset      *int
	RetryAfter          *int
	XRateLimitLimit     *int
	XRateLimitRemaining *int
	XRateLimitReset     *int
	XRequestId          *string
}

ListWhaleTradesResponse429Headers the declared response headers of an HTTP 429 response for ListWhaleTrades

type ListWhaleTradesResponse503Headers

type ListWhaleTradesResponse503Headers struct {
	RetryAfter *int
	XRequestId *string
}

ListWhaleTradesResponse503Headers the declared response headers of an HTTP 503 response for ListWhaleTrades

type MarketCandles

type MarketCandles struct {
	// ConditionId Market condition id the candles were read for.
	ConditionId string `json:"condition_id"`

	// Outcomes One entry per present provider token (YES first, then NO); empty when no tokens have been fetched yet.
	Outcomes []OutcomeCandles `json:"outcomes"`

	// Resolution Bucketing granularity that produced these candles.
	Resolution MarketCandlesResolution `json:"resolution"`
}

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).

type MarketCandlesResolution

type MarketCandlesResolution string

MarketCandlesResolution Bucketing granularity that produced these candles.

const (
	MarketCandlesResolutionN1d MarketCandlesResolution = "1d"
	MarketCandlesResolutionN1w MarketCandlesResolution = "1w"
)

Defines values for MarketCandlesResolution.

func (MarketCandlesResolution) Valid

func (e MarketCandlesResolution) Valid() bool

Valid indicates whether the value is a known member of the MarketCandlesResolution enum.

type MarketFlow added in v0.4.0

type MarketFlow struct {
	Market struct {
		Category    string `json:"category"`
		ConditionId string `json:"condition_id"`
		Id          string `json:"id"`

		// Platform Provider platform. Always polymarket, or null when the row carries no stored value.
		Platform MarketFlowMarketPlatform `json:"platform"`
		Slug     string                   `json:"slug"`
		Title    string                   `json:"title"`
	} `json:"market"`

	// SharpMoney Outcome-aware flow from all tracked whale trades in the window, without a grade filter. BUY YES and SELL NO add net exposure; BUY NO and SELL YES subtract it. Gross buy/sell volumes count both outcomes. Top positions are separately graded. Direction uses unrounded net: negative is NO, otherwise YES; the zero tie-break is not conviction. Canonical; smart_money is a deprecated byte-identical alias.
	SharpMoney struct {
		BuyVolumeUsd float32                       `json:"buy_volume_usd"`
		Direction    MarketFlowSharpMoneyDirection `json:"direction"`

		// LargeTradeCount Canonical key since #16304 (Polymarket's noun is large trade); whale_trade_count is its deprecated spelling, emitted beside it with the same value.
		LargeTradeCount *int    `json:"large_trade_count,omitempty"`
		NetFlowUsd      float32 `json:"net_flow_usd"`

		// OldestSnapshotAsOf Age of the oldest stored position snapshot behind top_positions: the minimum wallet sync clock over the positions this body publishes. The roster is a stored read rather than a live one, and graded wallets sit on different sync tiers, so this names how current the whole roster is; the response is no fresher than this timestamp. Null when the roster is empty or no published position carries a sync clock. It does not date net_flow_usd, the volumes or the trade counts, which come from large-trade event times.
		OldestSnapshotAsOf time.Time `json:"oldest_snapshot_as_of"`
		SellVolumeUsd      float32   `json:"sell_volume_usd"`

		// TokenId The Polymarket CLOB token id (ERC1155 asset id, decimal string) for the net-flow direction outcome; null when unavailable (e.g. unsynced markets).
		TokenId      string `json:"token_id"`
		TopPositions []struct {
			Address string                               `json:"address"`
			Grade   string                               `json:"grade"`
			Id      string                               `json:"id"`
			Side    MarketFlowSharpMoneyTopPositionsSide `json:"side"`
			SizeUsd float32                              `json:"size_usd"`

			// TokenId The Polymarket CLOB token id (ERC1155 asset id, decimal string) for this outcome; null when unavailable (e.g. unsynced markets).
			TokenId  string `json:"token_id"`
			Username string `json:"username"`
		} `json:"top_positions"`
		WhaleTradeCount int `json:"whale_trade_count"`
	} `json:"sharp_money"`

	// SmartMoney Deprecated alias of sharp_money; byte-identical and retained for backward compatibility.
	// Deprecated: this property has been marked as deprecated upstream, but no `x-deprecated-reason` was set
	SmartMoney struct {
		BuyVolumeUsd float32                       `json:"buy_volume_usd"`
		Direction    MarketFlowSmartMoneyDirection `json:"direction"`

		// LargeTradeCount Canonical key since #16304 (Polymarket's noun is large trade); whale_trade_count is its deprecated spelling, emitted beside it with the same value.
		LargeTradeCount *int    `json:"large_trade_count,omitempty"`
		NetFlowUsd      float32 `json:"net_flow_usd"`

		// OldestSnapshotAsOf Age of the oldest stored position snapshot behind top_positions: the minimum wallet sync clock over the positions this body publishes. The roster is a stored read rather than a live one, and graded wallets sit on different sync tiers, so this names how current the whole roster is; the response is no fresher than this timestamp. Null when the roster is empty or no published position carries a sync clock. It does not date net_flow_usd, the volumes or the trade counts, which come from large-trade event times.
		OldestSnapshotAsOf time.Time `json:"oldest_snapshot_as_of"`
		SellVolumeUsd      float32   `json:"sell_volume_usd"`

		// TokenId The Polymarket CLOB token id (ERC1155 asset id, decimal string) for the net-flow direction outcome; null when unavailable (e.g. unsynced markets).
		TokenId      string `json:"token_id"`
		TopPositions []struct {
			Address string                               `json:"address"`
			Grade   string                               `json:"grade"`
			Id      string                               `json:"id"`
			Side    MarketFlowSmartMoneyTopPositionsSide `json:"side"`
			SizeUsd float32                              `json:"size_usd"`

			// TokenId The Polymarket CLOB token id (ERC1155 asset id, decimal string) for this outcome; null when unavailable (e.g. unsynced markets).
			TokenId  string `json:"token_id"`
			Username string `json:"username"`
		} `json:"top_positions"`
		WhaleTradeCount int `json:"whale_trade_count"`
	} `json:"smart_money"`
	Timeframe string `json:"timeframe"`
}

MarketFlow defines model for MarketFlow.

type MarketFlowMarketPlatform added in v0.4.0

type MarketFlowMarketPlatform string

MarketFlowMarketPlatform Provider platform. Always polymarket, or null when the row carries no stored value.

const (
	MarketFlowMarketPlatformPolymarket MarketFlowMarketPlatform = "polymarket"
)

Defines values for MarketFlowMarketPlatform.

func (MarketFlowMarketPlatform) Valid added in v0.4.0

func (e MarketFlowMarketPlatform) Valid() bool

Valid indicates whether the value is a known member of the MarketFlowMarketPlatform enum.

type MarketFlowSharpMoneyDirection added in v0.4.0

type MarketFlowSharpMoneyDirection string

MarketFlowSharpMoneyDirection defines model for MarketFlow.SharpMoney.Direction.

const (
	MarketFlowSharpMoneyDirectionNO  MarketFlowSharpMoneyDirection = "NO"
	MarketFlowSharpMoneyDirectionYES MarketFlowSharpMoneyDirection = "YES"
)

Defines values for MarketFlowSharpMoneyDirection.

func (MarketFlowSharpMoneyDirection) Valid added in v0.4.0

Valid indicates whether the value is a known member of the MarketFlowSharpMoneyDirection enum.

type MarketFlowSharpMoneyTopPositionsSide added in v0.4.0

type MarketFlowSharpMoneyTopPositionsSide string

MarketFlowSharpMoneyTopPositionsSide defines model for MarketFlow.SharpMoney.TopPositions.Side.

const (
	MarketFlowSharpMoneyTopPositionsSideNO  MarketFlowSharpMoneyTopPositionsSide = "NO"
	MarketFlowSharpMoneyTopPositionsSideYES MarketFlowSharpMoneyTopPositionsSide = "YES"
)

Defines values for MarketFlowSharpMoneyTopPositionsSide.

func (MarketFlowSharpMoneyTopPositionsSide) Valid added in v0.4.0

Valid indicates whether the value is a known member of the MarketFlowSharpMoneyTopPositionsSide enum.

type MarketFlowSmartMoneyDirection added in v0.4.0

type MarketFlowSmartMoneyDirection string

MarketFlowSmartMoneyDirection defines model for MarketFlow.SmartMoney.Direction.

const (
	MarketFlowSmartMoneyDirectionNO  MarketFlowSmartMoneyDirection = "NO"
	MarketFlowSmartMoneyDirectionYES MarketFlowSmartMoneyDirection = "YES"
)

Defines values for MarketFlowSmartMoneyDirection.

func (MarketFlowSmartMoneyDirection) Valid added in v0.4.0

Valid indicates whether the value is a known member of the MarketFlowSmartMoneyDirection enum.

type MarketFlowSmartMoneyTopPositionsSide added in v0.4.0

type MarketFlowSmartMoneyTopPositionsSide string

MarketFlowSmartMoneyTopPositionsSide defines model for MarketFlow.SmartMoney.TopPositions.Side.

const (
	MarketFlowSmartMoneyTopPositionsSideNO  MarketFlowSmartMoneyTopPositionsSide = "NO"
	MarketFlowSmartMoneyTopPositionsSideYES MarketFlowSmartMoneyTopPositionsSide = "YES"
)

Defines values for MarketFlowSmartMoneyTopPositionsSide.

func (MarketFlowSmartMoneyTopPositionsSide) Valid added in v0.4.0

Valid indicates whether the value is a known member of the MarketFlowSmartMoneyTopPositionsSide enum.

type MarketHolder added in v0.2.0

type MarketHolder struct {
	// Address Lowercased proxy wallet.
	Address string `json:"address"`

	// CategoryEvidence Current category evidence, independent of the global grade. Pick of the Day stamps only the served display roster; frozen entry snapshots remain unchanged.
	CategoryEvidence *HolderCategoryEvidence `json:"category_evidence,omitempty"`

	// CategoryWinRate This wallet's win rate in the market's canonical category (`market.category`): the share of its resolved markets in that category whose realized P&L closed positive, as a 0..1 fraction. Present only with `category_win_rate_status` = `measured`. The same read `GET /api/v1/trader/{address}/categories` serves per wallet.
	CategoryWinRate *float32 `json:"category_win_rate,omitempty"`

	// CategoryWinRateGame For an esports market, the game `category_win_rate` and `category_win_record` were measured in: `LoL`, `CS2`, `Dota 2`, `Valorant`, `Call of Duty`, `Honor of Kings`, `Mobile Legends: Bang Bang`, `Overwatch`, `Rainbow Six Siege`, `Rocket League` or `StarCraft II`. Present only when the wallet's record in that game clears the 5-resolved-market floor, in which case the rate and record are the game's rather than the `Esports` bucket's. Absent when the rate is the bucket's (the wallet's game history is under the floor), on every non-esports market, and beside every non-measured status. Label the rate with this when present and with the market's `category` otherwise.
	CategoryWinRateGame *string `json:"category_win_rate_game,omitempty"`

	// CategoryWinRateStatus Why `category_win_rate` is present or absent: `measured` (rate present), `not_enough_data` (under the floor of 5 decided markets in the category), or `unavailable` (the market has no canonical category, or the read failed; retry later). Always present on this route.
	CategoryWinRateStatus MarketHolderCategoryWinRateStatus `json:"category_win_rate_status"`

	// CategoryWinRecord The two counts `category_win_rate` is the ratio of, from the same row: `wins / decided` equals the rate. Every resolved Polymarket market the wallet traded in the market's canonical category, at any position size, rebuilt daily. Present only with `category_win_rate_status` = `measured`.
	CategoryWinRecord *struct {
		// Decided Resolved markets in the category that this wallet closed with a profit or a loss. A market resolved at zero realized P&L is in neither count.
		Decided int `json:"decided"`

		// Wins Resolved markets in the category that this wallet closed with a profit.
		Wins int `json:"wins"`
	} `json:"category_win_record,omitempty"`

	// CurrentValueUsd Polymarket's own currentValue for this leg, in USD. Null when the snapshot predates the value map.
	CurrentValueUsd float32 `json:"current_value_usd"`

	// Grade All-time trader grade. This route lists the S/A/B cohort only, the same cohort a Pick of the Day roster lists.
	Grade MarketHolderGrade `json:"grade"`

	// Id Composite `pos_<wallet>:<condition_id>:<outcome_index>`, the same id `GET /api/v1/positions` gives this leg.
	Id string `json:"id"`

	// IsBot True when the wallet is flagged as automated.
	IsBot *bool `json:"is_bot,omitempty"`

	// IsNewWallet True when the wallet's first trade was under 30 days ago.
	IsNewWallet *bool `json:"is_new_wallet,omitempty"`

	// LastTradedAt The wallet's last recorded trade anywhere, null when unknown.
	LastTradedAt time.Time `json:"last_traded_at"`

	// MarketsTraded Distinct markets the wallet has traded.
	MarketsTraded *int `json:"markets_traded,omitempty"`

	// Name Polymarket's public display name from the same holder snapshot; null for a private wallet, which the provider redacts at the source.
	Name string `json:"name"`

	// OtherOutcomeShares Shares on the other outcome when the wallet holds both. Absent when the wallet is one-sided.
	OtherOutcomeShares *float32 `json:"other_outcome_shares,omitempty"`

	// Shares Shares held on `side`, from the complete provider scan.
	Shares float32 `json:"shares"`

	// Side The outcome this wallet nets to. A wallet holding both outcomes is listed once, on its net side; see `other_outcome_shares`.
	Side MarketHolderSide `json:"side"`

	// TokenId Polymarket CLOB token id (ERC1155 asset id, decimal string) for `side`; null when the market has no stored token id.
	TokenId string `json:"token_id"`

	// TraderId `trd_`-prefixed trader id, accepted by `GET /api/v1/trader/{address}`.
	TraderId string `json:"trader_id"`

	// WalletAgeDays Days since this wallet's first trade. The five badge fields are present together, only for a wallet that draws at least one badge.
	WalletAgeDays *float32 `json:"wallet_age_days,omitempty"`

	// XUsername The wallet's X handle without the @, when linked.
	XUsername *string `json:"x_username,omitempty"`
}

MarketHolder defines model for MarketHolder.

type MarketHolderCategoryWinRateStatus added in v0.2.0

type MarketHolderCategoryWinRateStatus string

MarketHolderCategoryWinRateStatus Why `category_win_rate` is present or absent: `measured` (rate present), `not_enough_data` (under the floor of 5 decided markets in the category), or `unavailable` (the market has no canonical category, or the read failed; retry later). Always present on this route.

const (
	MarketHolderCategoryWinRateStatusMeasured      MarketHolderCategoryWinRateStatus = "measured"
	MarketHolderCategoryWinRateStatusNotEnoughData MarketHolderCategoryWinRateStatus = "not_enough_data"
	MarketHolderCategoryWinRateStatusUnavailable   MarketHolderCategoryWinRateStatus = "unavailable"
)

Defines values for MarketHolderCategoryWinRateStatus.

func (MarketHolderCategoryWinRateStatus) Valid added in v0.2.0

Valid indicates whether the value is a known member of the MarketHolderCategoryWinRateStatus enum.

type MarketHolderGrade added in v0.2.0

type MarketHolderGrade string

MarketHolderGrade All-time trader grade. This route lists the S/A/B cohort only, the same cohort a Pick of the Day roster lists.

const (
	MarketHolderGradeA MarketHolderGrade = "A"
	MarketHolderGradeB MarketHolderGrade = "B"
	MarketHolderGradeS MarketHolderGrade = "S"
)

Defines values for MarketHolderGrade.

func (MarketHolderGrade) Valid added in v0.2.0

func (e MarketHolderGrade) Valid() bool

Valid indicates whether the value is a known member of the MarketHolderGrade enum.

type MarketHolderSide added in v0.2.0

type MarketHolderSide string

MarketHolderSide The outcome this wallet nets to. A wallet holding both outcomes is listed once, on its net side; see `other_outcome_shares`.

const (
	MarketHolderSideNO  MarketHolderSide = "NO"
	MarketHolderSideYES MarketHolderSide = "YES"
)

Defines values for MarketHolderSide.

func (MarketHolderSide) Valid added in v0.2.0

func (e MarketHolderSide) Valid() bool

Valid indicates whether the value is a known member of the MarketHolderSide enum.

type MarketHoldersMarket added in v0.2.0

type MarketHoldersMarket struct {
	// Category The canonical category bucket `category_win_rate` is measured in.
	Category    string     `json:"category"`
	ConditionId string     `json:"condition_id"`
	EndDate     *time.Time `json:"end_date,omitempty"`
	EventSlug   *string    `json:"event_slug,omitempty"`

	// Id `mkt_`-prefixed market id.
	Id         string  `json:"id"`
	OutcomeNo  string  `json:"outcome_no"`
	OutcomeYes string  `json:"outcome_yes"`
	Slug       *string `json:"slug,omitempty"`

	// Status A settled market's roster is whatever the provider still lists as open; it empties as holders redeem.
	Status     MarketHoldersMarketStatus `json:"status"`
	Title      string                    `json:"title"`
	TokenIdNo  string                    `json:"token_id_no"`
	TokenIdYes string                    `json:"token_id_yes"`
}

MarketHoldersMarket defines model for MarketHoldersMarket.

type MarketHoldersMarketStatus added in v0.2.0

type MarketHoldersMarketStatus string

MarketHoldersMarketStatus A settled market's roster is whatever the provider still lists as open; it empties as holders redeem.

const (
	MarketHoldersMarketStatusClosed   MarketHoldersMarketStatus = "closed"
	MarketHoldersMarketStatusOpen     MarketHoldersMarketStatus = "open"
	MarketHoldersMarketStatusResolved MarketHoldersMarketStatus = "resolved"
)

Defines values for MarketHoldersMarketStatus.

func (MarketHoldersMarketStatus) Valid added in v0.2.0

func (e MarketHoldersMarketStatus) Valid() bool

Valid indicates whether the value is a known member of the MarketHoldersMarketStatus enum.

type MarketHoldersScan added in v0.2.0

type MarketHoldersScan struct {
	// Complete Always true on a served roster. An incomplete or unstable scan is a 503, never a partial list.
	Complete bool `json:"complete"`

	// FetchedAt When the provider walk that produced the holder population finished.
	FetchedAt time.Time `json:"fetched_at"`

	// Source `cached`: the shared holder snapshot, at most 180 s old at compute time. `live`: the provider answered a fresh complete walk for this compute.
	Source MarketHoldersScanSource `json:"source"`

	// WalletCount Every distinct wallet the complete walk saw with open shares, graded or not. The roster lists the graded S/A/B subset.
	WalletCount int `json:"wallet_count"`
}

MarketHoldersScan defines model for MarketHoldersScan.

type MarketHoldersScanSource added in v0.2.0

type MarketHoldersScanSource string

MarketHoldersScanSource `cached`: the shared holder snapshot, at most 180 s old at compute time. `live`: the provider answered a fresh complete walk for this compute.

const (
	MarketHoldersScanSourceCached MarketHoldersScanSource = "cached"
	MarketHoldersScanSourceLive   MarketHoldersScanSource = "live"
)

Defines values for MarketHoldersScanSource.

func (MarketHoldersScanSource) Valid added in v0.2.0

func (e MarketHoldersScanSource) Valid() bool

Valid indicates whether the value is a known member of the MarketHoldersScanSource enum.

type MarketHoldersSideGrades added in v0.2.0

type MarketHoldersSideGrades struct {
	A int `json:"a"`
	B int `json:"b"`
	S int `json:"s"`
}

MarketHoldersSideGrades defines model for MarketHoldersSideGrades.

type MarketHoldersTotals added in v0.2.0

type MarketHoldersTotals struct {
	// GradedCount Distinct graded wallets with net exposure; a two-sided wallet counts once.
	GradedCount int                     `json:"graded_count"`
	NoCount     int                     `json:"no_count"`
	NoGrades    MarketHoldersSideGrades `json:"no_grades"`
	NoShares    float32                 `json:"no_shares"`

	// NoUsd Polymarket currentValue summed over the graded wallets netting NO.
	NoUsd     float32                 `json:"no_usd"`
	YesCount  int                     `json:"yes_count"`
	YesGrades MarketHoldersSideGrades `json:"yes_grades"`
	YesShares float32                 `json:"yes_shares"`

	// YesUsd Polymarket currentValue summed over the graded wallets netting YES.
	YesUsd float32 `json:"yes_usd"`
}

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

type MarketSearchResult

type MarketSearchResult struct {
	Category    string `json:"category"`
	ConditionId string `json:"condition_id"`
	Id          string `json:"id"`

	// Platform Provider platform. Always polymarket, or null when the row carries no stored value.
	Platform MarketSearchResultPlatform `json:"platform"`
	Slug     string                     `json:"slug"`

	// Status closed once Polymarket has closed trading or the market has resolved; active otherwise. The same rule labels a market on markets/search, markets/explore and market/{condition_id}/snapshot.
	Status MarketSearchResultStatus `json:"status"`
	Title  string                   `json:"title"`
}

MarketSearchResult defines model for MarketSearchResult.

type MarketSearchResultPlatform added in v0.4.0

type MarketSearchResultPlatform string

MarketSearchResultPlatform Provider platform. Always polymarket, or null when the row carries no stored value.

const (
	MarketSearchResultPlatformPolymarket MarketSearchResultPlatform = "polymarket"
)

Defines values for MarketSearchResultPlatform.

func (MarketSearchResultPlatform) Valid added in v0.4.0

func (e MarketSearchResultPlatform) Valid() bool

Valid indicates whether the value is a known member of the MarketSearchResultPlatform enum.

type MarketSearchResultStatus

type MarketSearchResultStatus string

MarketSearchResultStatus closed once Polymarket has closed trading or the market has resolved; active otherwise. The same rule labels a market on markets/search, markets/explore and market/{condition_id}/snapshot.

const (
	MarketSearchResultStatusActive MarketSearchResultStatus = "active"
	MarketSearchResultStatusClosed MarketSearchResultStatus = "closed"
)

Defines values for MarketSearchResultStatus.

func (MarketSearchResultStatus) Valid

func (e MarketSearchResultStatus) Valid() bool

Valid indicates whether the value is a known member of the MarketSearchResultStatus enum.

type MarketSnapshot

type MarketSnapshot struct {
	Freshness struct {
		// LiveSports Freshness requires the dedicated two-second post-publication marker to match the retained vintage and non-invalidated data timestamp; timestamp presence alone is insufficient. as_of records compute start, so stale_after_s is omitted rather than implying as_of plus two seconds. Missing membership is not_live only in a fresh source; stale membership remains stale and unreadable source data is unavailable. Repeated lookups reuse the shared payload and typed index for an unchanged generation.
		LiveSports MarketSnapshotFreshness `json:"live_sports"`
		MarketData MarketSnapshotFreshness `json:"market_data"`
		TopOfBook  MarketSnapshotFreshness `json:"top_of_book"`
	} `json:"freshness"`
	Liquidity struct {
		// LastPrice Always null. Polymarket snapshot prices come from outcome top-of-book midpoints.
		LastPrice    float32 `json:"last_price"`
		LiquidityUsd float32 `json:"liquidity_usd"`
		Source       string  `json:"source"`
		Volume24hUsd float32 `json:"volume_24h_usd"`
		VolumeUsd    float32 `json:"volume_usd"`
	} `json:"liquidity"`
	Market struct {
		Category     string    `json:"category"`
		ConditionId  string    `json:"condition_id"`
		CreatedAt    time.Time `json:"created_at"`
		Description  string    `json:"description"`
		EndDate      time.Time `json:"end_date"`
		EventSlug    string    `json:"event_slug"`
		Id           string    `json:"id"`
		Image        string    `json:"image"`
		MarketResult string    `json:"market_result"`
		MarketType   string    `json:"market_type"`
		PageSlug     string    `json:"page_slug"`
		Provider     string    `json:"provider"`
		ResolvedAt   time.Time `json:"resolved_at"`

		// SeriesSlug Polymarket series slug from the canonical identity row, null when unavailable. A sports series identifies a league and must not be used as a per-matchup grouping key.
		SeriesSlug string `json:"series_slug"`
		Slug       string `json:"slug"`

		// Status closed once Polymarket has closed trading or the market has resolved; active otherwise. The same rule labels a market on markets/search, markets/explore and market/{condition_id}/snapshot.
		Status MarketSnapshotMarketStatus `json:"status"`
		Title  string                     `json:"title"`
	} `json:"market"`
	Outcomes []struct {
		CurrentPrice *float32                   `json:"current_price,omitempty"`
		Label        string                     `json:"label"`
		Side         MarketSnapshotOutcomesSide `json:"side"`
		TokenId      *string                    `json:"token_id,omitempty"`
		TopOfBook    MarketSnapshotTopOfBook    `json:"top_of_book"`
	} `json:"outcomes"`
	Sports struct {
		LiveLeagueKey *string `json:"live_league_key,omitempty"`
		LiveMatchKey  *string `json:"live_match_key,omitempty"`

		// LiveScore Live-score period and elapsed may be omitted when unavailable (older responses use null). A score entry may omit full_name when it equals team; fall back to team. Distinct aliases and score admission markers are preserved.
		LiveScore *map[string]interface{}    `json:"live_score,omitempty"`
		Reason    *string                    `json:"reason,omitempty"`
		Source    string                     `json:"source"`
		Status    MarketSnapshotSportsStatus `json:"status"`
	} `json:"sports"`

	// Trust Price and spread trust metadata. Present only when expand=trust or expand[]=trust is requested.
	Trust *MarketSnapshotTrust `json:"trust,omitempty"`
}

MarketSnapshot defines model for MarketSnapshot.

type MarketSnapshotFreshness

type MarketSnapshotFreshness struct {
	AsOf   *time.Time `json:"as_of,omitempty"`
	Reason *string    `json:"reason,omitempty"`
	Source string     `json:"source"`

	// StaleAfterS Age-relative freshness bound when known. Omitted for live_sports: its as_of records compute start, while its two-second freshness marker starts at publication.
	StaleAfterS *int                          `json:"stale_after_s,omitempty"`
	Status      MarketSnapshotFreshnessStatus `json:"status"`
}

MarketSnapshotFreshness defines model for MarketSnapshotFreshness.

type MarketSnapshotFreshnessStatus

type MarketSnapshotFreshnessStatus string

MarketSnapshotFreshnessStatus defines model for MarketSnapshotFreshness.Status.

const (
	MarketSnapshotFreshnessStatusAvailable   MarketSnapshotFreshnessStatus = "available"
	MarketSnapshotFreshnessStatusFresh       MarketSnapshotFreshnessStatus = "fresh"
	MarketSnapshotFreshnessStatusNotLive     MarketSnapshotFreshnessStatus = "not_live"
	MarketSnapshotFreshnessStatusStale       MarketSnapshotFreshnessStatus = "stale"
	MarketSnapshotFreshnessStatusUnavailable MarketSnapshotFreshnessStatus = "unavailable"
)

Defines values for MarketSnapshotFreshnessStatus.

func (MarketSnapshotFreshnessStatus) Valid

Valid indicates whether the value is a known member of the MarketSnapshotFreshnessStatus enum.

type MarketSnapshotMarketStatus

type MarketSnapshotMarketStatus string

MarketSnapshotMarketStatus closed once Polymarket has closed trading or the market has resolved; active otherwise. The same rule labels a market on markets/search, markets/explore and market/{condition_id}/snapshot.

const (
	MarketSnapshotMarketStatusActive MarketSnapshotMarketStatus = "active"
	MarketSnapshotMarketStatusClosed MarketSnapshotMarketStatus = "closed"
)

Defines values for MarketSnapshotMarketStatus.

func (MarketSnapshotMarketStatus) Valid

func (e MarketSnapshotMarketStatus) Valid() bool

Valid indicates whether the value is a known member of the MarketSnapshotMarketStatus enum.

type MarketSnapshotOutcomesSide

type MarketSnapshotOutcomesSide string

MarketSnapshotOutcomesSide defines model for MarketSnapshot.Outcomes.Side.

const (
	MarketSnapshotOutcomesSideNo  MarketSnapshotOutcomesSide = "no"
	MarketSnapshotOutcomesSideYes MarketSnapshotOutcomesSide = "yes"
)

Defines values for MarketSnapshotOutcomesSide.

func (MarketSnapshotOutcomesSide) Valid

func (e MarketSnapshotOutcomesSide) Valid() bool

Valid indicates whether the value is a known member of the MarketSnapshotOutcomesSide enum.

type MarketSnapshotSportsStatus

type MarketSnapshotSportsStatus string

MarketSnapshotSportsStatus defines model for MarketSnapshot.Sports.Status.

const (
	MarketSnapshotSportsStatusFresh       MarketSnapshotSportsStatus = "fresh"
	MarketSnapshotSportsStatusNotLive     MarketSnapshotSportsStatus = "not_live"
	MarketSnapshotSportsStatusStale       MarketSnapshotSportsStatus = "stale"
	MarketSnapshotSportsStatusUnavailable MarketSnapshotSportsStatus = "unavailable"
)

Defines values for MarketSnapshotSportsStatus.

func (MarketSnapshotSportsStatus) Valid

func (e MarketSnapshotSportsStatus) Valid() bool

Valid indicates whether the value is a known member of the MarketSnapshotSportsStatus enum.

type MarketSnapshotTopOfBook

type MarketSnapshotTopOfBook struct {
	AskDepthUsdc *float32                      `json:"ask_depth_usdc,omitempty"`
	BestAsk      *float32                      `json:"best_ask,omitempty"`
	BestBid      *float32                      `json:"best_bid,omitempty"`
	BidDepthUsdc *float32                      `json:"bid_depth_usdc,omitempty"`
	Reason       *string                       `json:"reason,omitempty"`
	Source       string                        `json:"source"`
	SpreadBps    *int                          `json:"spread_bps,omitempty"`
	Status       MarketSnapshotTopOfBookStatus `json:"status"`
}

MarketSnapshotTopOfBook defines model for MarketSnapshotTopOfBook.

type MarketSnapshotTopOfBookStatus

type MarketSnapshotTopOfBookStatus string

MarketSnapshotTopOfBookStatus defines model for MarketSnapshotTopOfBook.Status.

const (
	MarketSnapshotTopOfBookStatusAvailable   MarketSnapshotTopOfBookStatus = "available"
	MarketSnapshotTopOfBookStatusUnavailable MarketSnapshotTopOfBookStatus = "unavailable"
)

Defines values for MarketSnapshotTopOfBookStatus.

func (MarketSnapshotTopOfBookStatus) Valid

Valid indicates whether the value is a known member of the MarketSnapshotTopOfBookStatus enum.

type MarketSnapshotTrust

type MarketSnapshotTrust struct {
	// CurrentPrice 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.
	CurrentPrice TrustMetadata `json:"current_price"`

	// SpreadBps 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.
	SpreadBps TrustMetadata `json:"spread_bps"`
}

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

type McpJsonRpcError

type McpJsonRpcError struct {
	Error struct {
		Code int `json:"code"`

		// Data Optional JSON-serializable error data.
		Data    *McpJsonRpcError_Error_Data `json:"data,omitempty"`
		Message string                      `json:"message"`
	} `json:"error"`
	Id      *McpJsonRpcError_Id    `json:"id,omitempty"`
	Jsonrpc McpJsonRpcErrorJsonrpc `json:"jsonrpc"`
}

McpJsonRpcError defines model for McpJsonRpcError.

type McpJsonRpcErrorErrorData0

type McpJsonRpcErrorErrorData0 = map[string]interface{}

McpJsonRpcErrorErrorData0 defines model for McpJsonRpcError.Error.Data.0.

type McpJsonRpcErrorErrorData1

type McpJsonRpcErrorErrorData1 = []interface{}

McpJsonRpcErrorErrorData1 defines model for McpJsonRpcError.Error.Data.1.

type McpJsonRpcErrorErrorData2

type McpJsonRpcErrorErrorData2 = string

McpJsonRpcErrorErrorData2 defines model for McpJsonRpcError.Error.Data.2.

type McpJsonRpcErrorErrorData3

type McpJsonRpcErrorErrorData3 = float32

McpJsonRpcErrorErrorData3 defines model for McpJsonRpcError.Error.Data.3.

type McpJsonRpcErrorErrorData4

type McpJsonRpcErrorErrorData4 = bool

McpJsonRpcErrorErrorData4 defines model for McpJsonRpcError.Error.Data.4.

type McpJsonRpcErrorId0

type McpJsonRpcErrorId0 = string

McpJsonRpcErrorId0 defines model for McpJsonRpcError.Id.0.

type McpJsonRpcErrorId1

type McpJsonRpcErrorId1 = float32

McpJsonRpcErrorId1 defines model for McpJsonRpcError.Id.1.

type McpJsonRpcErrorJsonrpc

type McpJsonRpcErrorJsonrpc string

McpJsonRpcErrorJsonrpc defines model for McpJsonRpcError.Jsonrpc.

const (
	McpJsonRpcErrorJsonrpcN20 McpJsonRpcErrorJsonrpc = "2.0"
)

Defines values for McpJsonRpcErrorJsonrpc.

func (McpJsonRpcErrorJsonrpc) Valid

func (e McpJsonRpcErrorJsonrpc) Valid() bool

Valid indicates whether the value is a known member of the McpJsonRpcErrorJsonrpc enum.

type McpJsonRpcError_Error_Data

type McpJsonRpcError_Error_Data struct {
	// contains filtered or unexported fields
}

McpJsonRpcError_Error_Data Optional JSON-serializable error data.

func (McpJsonRpcError_Error_Data) AsMcpJsonRpcErrorErrorData0

func (t McpJsonRpcError_Error_Data) AsMcpJsonRpcErrorErrorData0() (McpJsonRpcErrorErrorData0, error)

AsMcpJsonRpcErrorErrorData0 returns the union data inside the McpJsonRpcError_Error_Data as a McpJsonRpcErrorErrorData0

func (McpJsonRpcError_Error_Data) AsMcpJsonRpcErrorErrorData1

func (t McpJsonRpcError_Error_Data) AsMcpJsonRpcErrorErrorData1() (McpJsonRpcErrorErrorData1, error)

AsMcpJsonRpcErrorErrorData1 returns the union data inside the McpJsonRpcError_Error_Data as a McpJsonRpcErrorErrorData1

func (McpJsonRpcError_Error_Data) AsMcpJsonRpcErrorErrorData2

func (t McpJsonRpcError_Error_Data) AsMcpJsonRpcErrorErrorData2() (McpJsonRpcErrorErrorData2, error)

AsMcpJsonRpcErrorErrorData2 returns the union data inside the McpJsonRpcError_Error_Data as a McpJsonRpcErrorErrorData2

func (McpJsonRpcError_Error_Data) AsMcpJsonRpcErrorErrorData3

func (t McpJsonRpcError_Error_Data) AsMcpJsonRpcErrorErrorData3() (McpJsonRpcErrorErrorData3, error)

AsMcpJsonRpcErrorErrorData3 returns the union data inside the McpJsonRpcError_Error_Data as a McpJsonRpcErrorErrorData3

func (McpJsonRpcError_Error_Data) AsMcpJsonRpcErrorErrorData4

func (t McpJsonRpcError_Error_Data) AsMcpJsonRpcErrorErrorData4() (McpJsonRpcErrorErrorData4, error)

AsMcpJsonRpcErrorErrorData4 returns the union data inside the McpJsonRpcError_Error_Data as a McpJsonRpcErrorErrorData4

func (*McpJsonRpcError_Error_Data) FromMcpJsonRpcErrorErrorData0

func (t *McpJsonRpcError_Error_Data) FromMcpJsonRpcErrorErrorData0(v McpJsonRpcErrorErrorData0) error

FromMcpJsonRpcErrorErrorData0 overwrites any union data inside the McpJsonRpcError_Error_Data as the provided McpJsonRpcErrorErrorData0

func (*McpJsonRpcError_Error_Data) FromMcpJsonRpcErrorErrorData1

func (t *McpJsonRpcError_Error_Data) FromMcpJsonRpcErrorErrorData1(v McpJsonRpcErrorErrorData1) error

FromMcpJsonRpcErrorErrorData1 overwrites any union data inside the McpJsonRpcError_Error_Data as the provided McpJsonRpcErrorErrorData1

func (*McpJsonRpcError_Error_Data) FromMcpJsonRpcErrorErrorData2

func (t *McpJsonRpcError_Error_Data) FromMcpJsonRpcErrorErrorData2(v McpJsonRpcErrorErrorData2) error

FromMcpJsonRpcErrorErrorData2 overwrites any union data inside the McpJsonRpcError_Error_Data as the provided McpJsonRpcErrorErrorData2

func (*McpJsonRpcError_Error_Data) FromMcpJsonRpcErrorErrorData3

func (t *McpJsonRpcError_Error_Data) FromMcpJsonRpcErrorErrorData3(v McpJsonRpcErrorErrorData3) error

FromMcpJsonRpcErrorErrorData3 overwrites any union data inside the McpJsonRpcError_Error_Data as the provided McpJsonRpcErrorErrorData3

func (*McpJsonRpcError_Error_Data) FromMcpJsonRpcErrorErrorData4

func (t *McpJsonRpcError_Error_Data) FromMcpJsonRpcErrorErrorData4(v McpJsonRpcErrorErrorData4) error

FromMcpJsonRpcErrorErrorData4 overwrites any union data inside the McpJsonRpcError_Error_Data as the provided McpJsonRpcErrorErrorData4

func (McpJsonRpcError_Error_Data) MarshalJSON

func (t McpJsonRpcError_Error_Data) MarshalJSON() ([]byte, error)

func (*McpJsonRpcError_Error_Data) MergeMcpJsonRpcErrorErrorData0

func (t *McpJsonRpcError_Error_Data) MergeMcpJsonRpcErrorErrorData0(v McpJsonRpcErrorErrorData0) error

MergeMcpJsonRpcErrorErrorData0 performs a merge with any union data inside the McpJsonRpcError_Error_Data, using the provided McpJsonRpcErrorErrorData0

func (*McpJsonRpcError_Error_Data) MergeMcpJsonRpcErrorErrorData1

func (t *McpJsonRpcError_Error_Data) MergeMcpJsonRpcErrorErrorData1(v McpJsonRpcErrorErrorData1) error

MergeMcpJsonRpcErrorErrorData1 performs a merge with any union data inside the McpJsonRpcError_Error_Data, using the provided McpJsonRpcErrorErrorData1

func (*McpJsonRpcError_Error_Data) MergeMcpJsonRpcErrorErrorData2

func (t *McpJsonRpcError_Error_Data) MergeMcpJsonRpcErrorErrorData2(v McpJsonRpcErrorErrorData2) error

MergeMcpJsonRpcErrorErrorData2 performs a merge with any union data inside the McpJsonRpcError_Error_Data, using the provided McpJsonRpcErrorErrorData2

func (*McpJsonRpcError_Error_Data) MergeMcpJsonRpcErrorErrorData3

func (t *McpJsonRpcError_Error_Data) MergeMcpJsonRpcErrorErrorData3(v McpJsonRpcErrorErrorData3) error

MergeMcpJsonRpcErrorErrorData3 performs a merge with any union data inside the McpJsonRpcError_Error_Data, using the provided McpJsonRpcErrorErrorData3

func (*McpJsonRpcError_Error_Data) MergeMcpJsonRpcErrorErrorData4

func (t *McpJsonRpcError_Error_Data) MergeMcpJsonRpcErrorErrorData4(v McpJsonRpcErrorErrorData4) error

MergeMcpJsonRpcErrorErrorData4 performs a merge with any union data inside the McpJsonRpcError_Error_Data, using the provided McpJsonRpcErrorErrorData4

func (*McpJsonRpcError_Error_Data) UnmarshalJSON

func (t *McpJsonRpcError_Error_Data) UnmarshalJSON(b []byte) error

type McpJsonRpcError_Id

type McpJsonRpcError_Id struct {
	// contains filtered or unexported fields
}

McpJsonRpcError_Id defines model for McpJsonRpcError.Id.

func (McpJsonRpcError_Id) AsMcpJsonRpcErrorId0

func (t McpJsonRpcError_Id) AsMcpJsonRpcErrorId0() (McpJsonRpcErrorId0, error)

AsMcpJsonRpcErrorId0 returns the union data inside the McpJsonRpcError_Id as a McpJsonRpcErrorId0

func (McpJsonRpcError_Id) AsMcpJsonRpcErrorId1

func (t McpJsonRpcError_Id) AsMcpJsonRpcErrorId1() (McpJsonRpcErrorId1, error)

AsMcpJsonRpcErrorId1 returns the union data inside the McpJsonRpcError_Id as a McpJsonRpcErrorId1

func (*McpJsonRpcError_Id) FromMcpJsonRpcErrorId0

func (t *McpJsonRpcError_Id) FromMcpJsonRpcErrorId0(v McpJsonRpcErrorId0) error

FromMcpJsonRpcErrorId0 overwrites any union data inside the McpJsonRpcError_Id as the provided McpJsonRpcErrorId0

func (*McpJsonRpcError_Id) FromMcpJsonRpcErrorId1

func (t *McpJsonRpcError_Id) FromMcpJsonRpcErrorId1(v McpJsonRpcErrorId1) error

FromMcpJsonRpcErrorId1 overwrites any union data inside the McpJsonRpcError_Id as the provided McpJsonRpcErrorId1

func (McpJsonRpcError_Id) MarshalJSON

func (t McpJsonRpcError_Id) MarshalJSON() ([]byte, error)

func (*McpJsonRpcError_Id) MergeMcpJsonRpcErrorId0

func (t *McpJsonRpcError_Id) MergeMcpJsonRpcErrorId0(v McpJsonRpcErrorId0) error

MergeMcpJsonRpcErrorId0 performs a merge with any union data inside the McpJsonRpcError_Id, using the provided McpJsonRpcErrorId0

func (*McpJsonRpcError_Id) MergeMcpJsonRpcErrorId1

func (t *McpJsonRpcError_Id) MergeMcpJsonRpcErrorId1(v McpJsonRpcErrorId1) error

MergeMcpJsonRpcErrorId1 performs a merge with any union data inside the McpJsonRpcError_Id, using the provided McpJsonRpcErrorId1

func (*McpJsonRpcError_Id) UnmarshalJSON

func (t *McpJsonRpcError_Id) UnmarshalJSON(b []byte) error

type OpenMcpEventStreamParams

type OpenMcpEventStreamParams struct {
	// XQueryValidation Opt into strict query-name validation. The default is compatible: unknown names are ignored and reported in X-Query-Ignored. With strict, an unknown name returns 400 bad_request with error.reason unknown_query_parameter before the handler runs, including when its percent escape is incomplete.
	XQueryValidation *OpenMcpEventStreamParamsXQueryValidation `json:"X-Query-Validation,omitempty"`

	// McpSessionId Session ID minted by the server on initialize.
	McpSessionId *string `json:"Mcp-Session-Id,omitempty"`

	// MCPProtocolVersion The negotiated MCP protocol revision, sent on every request after initialize (MCP Streamable HTTP transport). Accepted values: 2025-11-25, 2025-06-18, 2025-03-26, 2024-11-05. Any other value answers HTTP 400 with JSON-RPC error -32600. Absent, the request is served as 2025-03-26.
	MCPProtocolVersion *OpenMcpEventStreamParamsMCPProtocolVersion `json:"MCP-Protocol-Version,omitempty"`
}

OpenMcpEventStreamParams defines parameters for OpenMcpEventStream.

type OpenMcpEventStreamParamsMCPProtocolVersion added in v0.2.0

type OpenMcpEventStreamParamsMCPProtocolVersion string

OpenMcpEventStreamParamsMCPProtocolVersion defines parameters for OpenMcpEventStream.

const (
	OpenMcpEventStreamParamsMCPProtocolVersionN20241105 OpenMcpEventStreamParamsMCPProtocolVersion = "2024-11-05"
	OpenMcpEventStreamParamsMCPProtocolVersionN20250326 OpenMcpEventStreamParamsMCPProtocolVersion = "2025-03-26"
	OpenMcpEventStreamParamsMCPProtocolVersionN20250618 OpenMcpEventStreamParamsMCPProtocolVersion = "2025-06-18"
	OpenMcpEventStreamParamsMCPProtocolVersionN20251125 OpenMcpEventStreamParamsMCPProtocolVersion = "2025-11-25"
)

Defines values for OpenMcpEventStreamParamsMCPProtocolVersion.

func (OpenMcpEventStreamParamsMCPProtocolVersion) Valid added in v0.2.0

Valid indicates whether the value is a known member of the OpenMcpEventStreamParamsMCPProtocolVersion enum.

type OpenMcpEventStreamParamsXQueryValidation added in v0.3.0

type OpenMcpEventStreamParamsXQueryValidation string

OpenMcpEventStreamParamsXQueryValidation defines parameters for OpenMcpEventStream.

const (
	OpenMcpEventStreamParamsXQueryValidationStrict OpenMcpEventStreamParamsXQueryValidation = "strict"
)

Defines values for OpenMcpEventStreamParamsXQueryValidation.

func (OpenMcpEventStreamParamsXQueryValidation) Valid added in v0.3.0

Valid indicates whether the value is a known member of the OpenMcpEventStreamParamsXQueryValidation enum.

type OpenMcpEventStreamResponse

type OpenMcpEventStreamResponse struct {
	Body         []byte
	HTTPResponse *http.Response
	// JSON401 the response for an HTTP 401 `application/json` response
	JSON401 *ApiError
	// JSON403 the response for an HTTP 403 `application/json` response
	JSON403 *ApiError
	// JSON405 the response for an HTTP 405 `application/json` response
	JSON405 *McpJsonRpcError
	// JSON429 the response for an HTTP 429 `application/json` response
	JSON429 *ApiError
	// JSON500 the response for an HTTP 500 `application/json` response
	JSON500 *ApiError
	// Headers405 the parsed response headers for an HTTP 405 response
	Headers405 *OpenMcpEventStreamResponse405Headers
	// Headers429 the parsed response headers for an HTTP 429 response
	Headers429 *OpenMcpEventStreamResponse429Headers
}

func ParseOpenMcpEventStreamResponse

func ParseOpenMcpEventStreamResponse(rsp *http.Response) (*OpenMcpEventStreamResponse, error)

ParseOpenMcpEventStreamResponse parses an HTTP response from a OpenMcpEventStreamWithResponse call

func (OpenMcpEventStreamResponse) ContentType

func (r OpenMcpEventStreamResponse) ContentType() string

ContentType is a convenience method to retrieve the Content-Type value from the HTTP response headers

func (OpenMcpEventStreamResponse) GetBody

func (r OpenMcpEventStreamResponse) GetBody() []byte

GetBody returns the raw response body bytes

func (OpenMcpEventStreamResponse) GetJSON401

func (r OpenMcpEventStreamResponse) GetJSON401() *ApiError

GetJSON401 returns the response for an HTTP 401 `application/json` response

func (OpenMcpEventStreamResponse) GetJSON403

func (r OpenMcpEventStreamResponse) GetJSON403() *ApiError

GetJSON403 returns the response for an HTTP 403 `application/json` response

func (OpenMcpEventStreamResponse) GetJSON405 added in v0.2.0

GetJSON405 returns the response for an HTTP 405 `application/json` response

func (OpenMcpEventStreamResponse) GetJSON429

func (r OpenMcpEventStreamResponse) GetJSON429() *ApiError

GetJSON429 returns the response for an HTTP 429 `application/json` response

func (OpenMcpEventStreamResponse) GetJSON500 added in v0.4.0

func (r OpenMcpEventStreamResponse) GetJSON500() *ApiError

GetJSON500 returns the response for an HTTP 500 `application/json` response

func (OpenMcpEventStreamResponse) Status

Status returns HTTPResponse.Status

func (OpenMcpEventStreamResponse) StatusCode

func (r OpenMcpEventStreamResponse) StatusCode() int

StatusCode returns HTTPResponse.StatusCode

type OpenMcpEventStreamResponse405Headers added in v0.2.0

type OpenMcpEventStreamResponse405Headers struct {
	Allow               *string
	RateLimitLimit      *int
	RateLimitRemaining  *int
	RateLimitReset      *int
	ServerTiming        *string
	XMcpErrorCode       *int
	XRateLimitLimit     *int
	XRateLimitRemaining *int
	XRateLimitReset     *int
	XRequestId          *string
	XUsageAccounting    *string
}

OpenMcpEventStreamResponse405Headers the declared response headers of an HTTP 405 response for OpenMcpEventStream

type OpenMcpEventStreamResponse429Headers

type OpenMcpEventStreamResponse429Headers struct {
	RateLimitLimit      *int
	RateLimitRemaining  *int
	RateLimitReset      *int
	RetryAfter          *int
	XRateLimitLimit     *int
	XRateLimitRemaining *int
	XRateLimitReset     *int
	XRequestId          *string
}

OpenMcpEventStreamResponse429Headers the declared response headers of an HTTP 429 response for OpenMcpEventStream

type OutcomeCandles

type OutcomeCandles struct {
	// Candles OHLC candles for this outcome token, ascending by bucket start.
	Candles []Candle `json:"candles"`

	// Outcome Canonical side label.
	Outcome OutcomeCandlesOutcome `json:"outcome"`

	// TokenId Provider CLOB token id the candles were read for.
	TokenId string `json:"token_id"`
}

OutcomeCandles One outcome token's bucketed candle series.

type OutcomeCandlesOutcome

type OutcomeCandlesOutcome string

OutcomeCandlesOutcome Canonical side label.

const (
	OutcomeCandlesOutcomeNO  OutcomeCandlesOutcome = "NO"
	OutcomeCandlesOutcomeYES OutcomeCandlesOutcome = "YES"
)

Defines values for OutcomeCandlesOutcome.

func (OutcomeCandlesOutcome) Valid

func (e OutcomeCandlesOutcome) Valid() bool

Valid indicates whether the value is a known member of the OutcomeCandlesOutcome enum.

type PickHolder

type PickHolder struct {
	Address string `json:"address"`

	// CategoryEvidence Current category evidence, independent of the global grade. Pick of the Day stamps only the served display roster; frozen entry snapshots remain unchanged.
	CategoryEvidence *HolderCategoryEvidence `json:"category_evidence,omitempty"`

	// CategoryWinRate This wallet's win rate in the pick's canonical category bucket (the pick's `category` field, e.g. Basketball -- label the rate with it, never with the narrower `display_category` league, except when `category_win_rate_game` is present, in which case the rate is that game's and is labelled with it): the share of the wallet's resolved markets in that category whose realized P&L closed positive, as a 0..1 fraction. Present only with `category_win_rate_status` = `measured`, on `display_holders` entries, and only when the wallet clears the resolved-market floor; recomputed at serve time from the current category read model, not frozen with the pick. Absent on `holders` entries, legacy rows, and payloads predating the field.
	CategoryWinRate *float32 `json:"category_win_rate,omitempty"`

	// CategoryWinRateGame For an esports pick, the game `category_win_rate` and `category_win_record` were measured in, by the same name the pick's `display_category` uses for it: `LoL`, `CS2`, `Dota 2`, `Valorant`, `Call of Duty`, `Honor of Kings`, `Mobile Legends: Bang Bang`, `Overwatch`, `Rainbow Six Siege`, `Rocket League` or `StarCraft II`. Present only when the wallet's record in that game clears the 5-resolved-market floor, in which case the rate and record are the game's rather than the `Esports` bucket's. Absent when the rate is the bucket's (the wallet's game history is under the floor), on every non-esports pick, beside every non-measured status, and on payloads predating the field. Label the rate with this when present and with `category` otherwise.
	CategoryWinRateGame *string `json:"category_win_rate_game,omitempty"`

	// CategoryWinRateStatus Why `category_win_rate` is present or absent on a `display_holders` entry: `measured` (rate present), `not_enough_data` (the wallet is below the resolved-market floor of 5 in the category), or `unavailable` (the annotation read failed; retry later). Absent entirely on `holders` entries, legacy rows, and payloads predating the field -- absence means the roster was never annotated, not a small sample.
	CategoryWinRateStatus *PickHolderCategoryWinRateStatus `json:"category_win_rate_status,omitempty"`

	// CategoryWinRecord The two counts `category_win_rate` is the ratio of, read from the same row: `wins / decided` equals the rate. Counts every resolved Polymarket market the wallet traded in the pick's canonical category (or in its game, when `category_win_rate_game` is present), at any position size; the counts are rebuilt daily. Present only with `category_win_rate_status` = `measured`; absent otherwise and on payloads predating the field.
	CategoryWinRecord *struct {
		// Decided Resolved markets in the category that this wallet closed with a profit or a loss. A market resolved at zero realized P&L is in neither count.
		Decided int `json:"decided"`

		// Wins Resolved markets in the category that this wallet closed with a profit.
		Wins int `json:"wins"`
	} `json:"category_win_record,omitempty"`

	// EntryValueUsd USD entry value of this wallet's position: `shares` times the pick's frozen `backed_price`. An entry valuation, never a live balance or the provider's current value. Omitted when the holder snapshot has no valid price.
	EntryValueUsd *float32 `json:"entry_value_usd,omitempty"`

	// Grade All-time trader grade (S, A, B, C, D, F).
	Grade string `json:"grade"`

	// IsBot True when the wallet has traded 10,000 or more distinct markets, the breadth floor 0xinsider uses to mark automated wallets. It is a breadth rule, not proof of automation. Stamped at serve time from the wallet's current trader record, never frozen with the pick. The five badge fields are present together, and only for a wallet that carries at least one badge; all absent means no badge, or a body cached before the fields shipped.
	IsBot *bool `json:"is_bot,omitempty"`

	// IsNewWallet True when the wallet's first trade was under 30 days ago. Stamped at serve time from the wallet's current trader record, never frozen with the pick. The five badge fields are present together, and only for a wallet that carries at least one badge; all absent means no badge, or a body cached before the fields shipped.
	IsNewWallet *bool `json:"is_new_wallet,omitempty"`

	// LastTradedAt The wallet's most recent recorded trade time, stamped at serve time from its current trader record rather than frozen with the pick. Always sent; null when no trade time is recorded.
	LastTradedAt time.Time `json:"last_traded_at"`

	// MarketsTraded Distinct markets this wallet has traded. Stamped at serve time from the wallet's current trader record, never frozen with the pick. The five badge fields are present together, and only for a wallet that carries at least one badge; all absent means no badge, or a body cached before the fields shipped.
	MarketsTraded *int   `json:"markets_traded,omitempty"`
	Name          string `json:"name"`

	// ProfileSegment 0xinsider profile path segment this wallet links to: `@<username>` when that username resolves to this wallet alone, otherwise the lowercase wallet. Percent-encode the part after `@` and append to `https://0xinsider.com/profile/`. Stamped at serve time; absent on a body cached before the field shipped.
	ProfileSegment *string `json:"profile_segment,omitempty"`
	Shares         float32 `json:"shares"`

	// WalletAgeDays Days since this wallet's first trade. Stamped at serve time from the wallet's current trader record, never frozen with the pick. The five badge fields are present together, and only for a wallet that carries at least one badge; all absent means no badge, or a body cached before the fields shipped.
	WalletAgeDays *float32 `json:"wallet_age_days,omitempty"`

	// XUsername The wallet's X handle from its Polymarket profile, normalized to 1-15 characters of [A-Za-z0-9_] with no `@`. Link it as `https://x.com/<handle>`. Stamped at serve time from the wallet's current trader record, never frozen with the pick. The five badge fields are present together, and only for a wallet that carries at least one badge; all absent means no badge, or a body cached before the fields shipped.
	XUsername *string `json:"x_username,omitempty"`
}

PickHolder defines model for PickHolder.

type PickHolderCategoryWinRateStatus

type PickHolderCategoryWinRateStatus string

PickHolderCategoryWinRateStatus Why `category_win_rate` is present or absent on a `display_holders` entry: `measured` (rate present), `not_enough_data` (the wallet is below the resolved-market floor of 5 in the category), or `unavailable` (the annotation read failed; retry later). Absent entirely on `holders` entries, legacy rows, and payloads predating the field -- absence means the roster was never annotated, not a small sample.

const (
	PickHolderCategoryWinRateStatusMeasured      PickHolderCategoryWinRateStatus = "measured"
	PickHolderCategoryWinRateStatusNotEnoughData PickHolderCategoryWinRateStatus = "not_enough_data"
	PickHolderCategoryWinRateStatusUnavailable   PickHolderCategoryWinRateStatus = "unavailable"
)

Defines values for PickHolderCategoryWinRateStatus.

func (PickHolderCategoryWinRateStatus) Valid

Valid indicates whether the value is a known member of the PickHolderCategoryWinRateStatus enum.

type PickOfTheDay

type PickOfTheDay struct {
	// BackedPrice Frozen pre-game probability (0..1) for the backed side, written once at publication. It is the Polymarket CLOB order book midpoint at release, not an executed fill: a buyer lifts the ask, so a subscriber's own entry is usually a little worse than this price.
	BackedPrice *float32 `json:"backed_price,omitempty"`

	// BackedSharpUsd Raw backed-side sharp-money USD frozen at generation. This is the Sharp USD value, not the recency-weighted sharp_usd which decays. Omitted on current public V1 rows when the B-inclusive value has no reconstructible S/A equivalent.
	BackedSharpUsd *float32 `json:"backed_sharp_usd,omitempty"`

	// Category Frozen canonical calibration/report bucket (e.g. "Basketball", "MMA", or "Soccer"). Existing semantics are unchanged; presentation consumers should prefer display_category when present.
	Category *string `json:"category,omitempty"`

	// CategoryEdgePct Deprecated (#7170): no longer populated for picks selected on/after the calibration-edge change; omitted (absent) for new picks (the field uses skip_serializing_if, so a null value is dropped from the JSON rather than serialized as null). Permanently frozen-legacy -- retained for historical picks, with no removal or replacement planned, so no v2 is implied. Historical picks may still carry a value. Legacy meaning: category win-rate edge as a fraction (the backed-side cohort's win rate in this category minus the non-market-maker category baseline, e.g. 0.09 = +9 points), paired with category_edge_sample.
	CategoryEdgePct *float32 `json:"category_edge_pct,omitempty"`

	// CategoryEdgeSample Deprecated (#7170): no longer populated for picks selected on/after the calibration-edge change; omitted (absent) for new picks (the field uses skip_serializing_if, so a null value is dropped from the JSON rather than serialized as null). Permanently frozen-legacy -- retained for historical picks, with no removal or replacement planned, so no v2 is implied. Historical picks may still carry a value. Legacy meaning: pooled count of resolved markets behind category_edge_pct (the headline's n).
	CategoryEdgeSample *int `json:"category_edge_sample,omitempty"`

	// ClvBasis Backend-owned CLV evidence basis. `frozen_displayed_entry` uses the persisted displayed entry. `historical_provider_entry` uses a known-CLOB point at or before publication. `historical_provider_price_match` requires the latest point in the prior hour to match. `historical_provider_nearby_price_match` requires a matching point within five minutes before publication. Source-null bases preserve unknown original provenance.
	ClvBasis *string `json:"clv_basis,omitempty"`

	// ClvDisplay Backend-formatted signed CLV percentage, present exactly when clv_pct is present.
	ClvDisplay *string `json:"clv_display,omitempty"`

	// ClvExplanation Backend-owned CLV formula text with the entry probability, close probability, and rounded result. Provider timestamps remain private.
	ClvExplanation *string `json:"clv_explanation,omitempty"`

	// ClvPct Closing-line value toward the backed side, computed as (close / entry - 1) * 100. The basis-specific provider p entry must match the stored display; historical_provider_price_match also requires source provenance to remain null and its latest entry to be within the one-hour window at or before publication. Every basis requires a later quality-checked p close from the same series in the bounded post-entry, pre-kickoff window. Omitted when not measured.
	ClvPct *float32 `json:"clv_pct,omitempty"`

	// ClvStatus Backend-owned CLV capture disposition. "pending" means no capture decision exists yet; terminal provider or quality statuses remain distinguishable. The raw close price and timestamp are never serialized.
	ClvStatus *string `json:"clv_status,omitempty"`

	// ConsensusEdgePct First-party/internal consensus edge = sharp_pct - market_pct, the conviction-vs-price gap (how much more of the current-policy sharp money sits on this side than the price implies). Omitted on current public V1 rows when the B-inclusive value has no reconstructible S/A equivalent. This is NOT an expected-value or guaranteed edge. Omitted when either input is unavailable.
	ConsensusEdgePct *float32 `json:"consensus_edge_pct,omitempty"`

	// DirectionalConfidence First-party/internal team-directional commitment read at selection time: the fraction (0..1) of the backed side's current-policy graded sharp-money DOLLARS held by wallets read one-way rather than hedged: no opposite leg on this market worth at least 10% of the backed leg (Polymarket's own currentValue pair), and no opposing team across the game's markets where the wallet's synced legs are fresh. Current public V1 rows omit this B-inclusive read because its historical S/A equivalent is not reconstructed. A high value means the graded pile is really committed to this side; a low one means much of it is hedged or unreadable. Omitted when the read was not computed (a pick selected before the field existed, an ungroupable game, an empty graded pile, or a pile where no holder carried usable evidence) -- which is NOT the same as 0.0, a computed reading that classified holders and found none one-way.
	DirectionalConfidence *float32 `json:"directional_confidence,omitempty"`

	// Disclaimer Risk disclaimer shown with every pick.
	Disclaimer *string `json:"disclaimer,omitempty"`

	// DisplayCategory Frozen public presentation category: the competition the Polymarket event belongs to. A curated label comes first -- an official league (e.g. "WNBA" or "UFC"), the esports title (e.g. "CS2", "LoL", "Dota 2" or "Valorant"), or a soccer competition (e.g. "LaLiga", "Premier League", "Serie A" or "UEFA Champions League"); any other competition carries the provider's own competition name without its season year (e.g. "UEFA Nations League", "ATP" or "Wimbledon"). It equals category only when the provider names no competition. An esports pick keeps the pooled "Esports" bucket in category, so a per-title label never implies a per-title measured cohort. Additive and optional for mixed-version client compatibility.
	DisplayCategory *string `json:"display_category,omitempty"`

	// DisplayHolders Full-only complete provider-confirmed S/A/B holder roster for the current Pick of the Day backing policy. Omitted for teaser, no-pick, and historical rows whose frozen holder proof predates this policy. Each entry may additionally carry `category_win_rate` / `category_win_rate_status`: the wallet's win rate in the pick's canonical `category`, stamped at serve time from the current category read model (the same annotation the sports sharp-money chips carry). The bounded `holders` compatibility projection never carries these fields.
	DisplayHolders *[]PickHolder `json:"display_holders,omitempty"`

	// EditorialNote Optional editorial note attached to the pick.
	EditorialNote *string `json:"editorial_note,omitempty"`

	// EntryAuthorization Optional full-only authorization for newly issued policy-7 picks; omitted for legacy or unissued picks and teasers. It remains historical after expiry.
	EntryAuthorization *PotdEntryAuthorization `json:"entry_authorization,omitempty"`

	// EntryPriceNote Full-only disclosure when backed_price was recovered from provider history within 30 seconds before publication. Render beside the price. Absent for ordinary publication captures and teasers; this is a historical reference, not an executed fill.
	EntryPriceNote *string `json:"entry_price_note,omitempty"`

	// EventLinkSlug Backend-resolved /event destination slug for this pick's source market; its absence is an authoritative no-link decision.
	EventLinkSlug *string `json:"event_link_slug,omitempty"`

	// EventSlug The canonical /event game-page slug (one neutral page per game); omitted when the game has no neutral event page.
	EventSlug *string `json:"event_slug,omitempty"`

	// GameEnded Whether the backed game is over according to the cached live scoreboard, read at serve time. Tells a finished game from one still in play before `outcome` settles. Omitted when the pick has no event slug or no scoreboard is cached for it; absence is unknown, never false.
	GameEnded *bool `json:"game_ended,omitempty"`

	// GameStarted True once the backed game's kickoff has passed (kickoff <= now). When true the snapshotted pre-game price is no longer actionable. Absent for a legacy pick with no stored kickoff (treat as not-started).
	GameStarted *bool `json:"game_started,omitempty"`

	// HedgedHolderCount Graded backed-side holders read as HEDGED across the game's markets.
	HedgedHolderCount *int `json:"hedged_holder_count,omitempty"`

	// HolderCount Exact S/A sharp-money proof count on the backed side. The current display_holders roster can be longer because it also carries B-grade sharp-money holders.
	HolderCount *int `json:"holder_count,omitempty"`

	// Holders Bounded S/A compatibility projection of the frozen sharp-money holders on the backed side. Current full payloads expose the complete S/A/B roster in display_holders; historical rows can retain their earlier frozen shape.
	Holders *[]PickHolder `json:"holders,omitempty"`

	// IsLocked True only before the pick's stored release instant (a pre-release embargo flag); effectively always false on a served, already-published pick. To detect that the backed game has kicked off, use `game_started`.
	IsLocked *bool `json:"is_locked,omitempty"`

	// MarketPct Market-implied probability of the backed side as a fraction 0..1 (equals backed_price), re-exposed alongside sharp_pct for the WHY breakdown.
	MarketPct *float32 `json:"market_pct,omitempty"`

	// MarketUrl Canonical web market URL.
	MarketUrl *string `json:"market_url,omitempty"`

	// Matchup Human-readable matchup (e.g. "Portugal vs. Uzbekistan").
	Matchup *string `json:"matchup,omitempty"`

	// OddsDisplay Pre-formatted backed_price as cents-on-the-dollar odds, to ONE decimal: "62.0c" / "99.9c". Never rounded to a whole cent -- a 99.9c favorite is not a 100c certainty. Convenience only; backed_price is the source value. Omitted when backed_price is.
	OddsDisplay *string `json:"odds_display,omitempty"`

	// OneWayGradedUsd The one-way holders' share of the backed-side graded dollars (the confidence's numerator).
	OneWayGradedUsd *float32 `json:"one_way_graded_usd,omitempty"`

	// OneWayHolderCount Graded backed-side holders read as one-way-committed on this game.
	OneWayHolderCount *int `json:"one_way_holder_count,omitempty"`

	// Outcome Settlement outcome of the backed side; 'pending' until the market resolves.
	Outcome *PickOfTheDayOutcome `json:"outcome,omitempty"`

	// OutcomeDisplay Pre-formatted SETTLEMENT STATUS for display: "Win" / "Loss" / "Void" / "Pending" -- the outcome enum above as a label. Convenience only; outcome is the source value. NOTE: this is the win/loss STATUS, not the backed side. The backed side is pick_outcome_label ("Belgium (-2.5)") -- a different field answering a different question.
	OutcomeDisplay *string `json:"outcome_display,omitempty"`

	// PayoutDisplay Pre-formatted return_usd as USD with cents and thousands separators: "$1,612.90" / "$12,500.00". The GROSS return (the stake included), so it carries no sign. Convenience only; return_usd is the source value. Omitted when return_usd is.
	PayoutDisplay *string `json:"payout_display,omitempty"`

	// PickCount Number of items in `picks`: the proof-readable picks. Picks held in `proof_pending_picks` are not counted.
	PickCount *int `json:"pick_count,omitempty"`

	// PickDate The pick's local publication date (YYYY-MM-DD).
	PickDate *openapi_types.Date `json:"pick_date,omitempty"`

	// PickOutcomeLabel The backed side phrased as a bet: a team for a moneyline (e.g. "Portugal"), the handicap line for a spread (e.g. "Belgium (-2.5)"), or "{team} to advance" for a knockout advancement market (e.g. "Spain to advance").
	PickOutcomeLabel *string `json:"pick_outcome_label,omitempty"`

	// PickRank Stable 1-based slot within the product day's ranked picks.
	PickRank *int `json:"pick_rank,omitempty"`

	// Picks The complete ranked picks for this product day, ordered by pick_rank. Thin days contain fewer items; the selector never fabricates rows.
	Picks *[]PickOfTheDay `json:"picks,omitempty"`

	// Platform Provider platform. Always polymarket.
	Platform *PickOfTheDayPlatform `json:"platform,omitempty"`

	// PolymarketUrl Where this pick's outbound Polymarket link lands: Polymarket's own redirect answer for `/event/<event_slug>`, carrying the referral tag. Omitted until that redirect has been resolved; link to the event page instead when it is absent.
	PolymarketUrl *string `json:"polymarket_url,omitempty"`

	// Position The backed side phrased as a bet (e.g. "Portugal to win").
	Position *string `json:"position,omitempty"`

	// ProfitDisplay Pre-formatted PROFIT on the stake -- return_usd minus stake_usd, i.e. the payout net of what you put in -- as a signed USD string: "+$612.90". Distinct from payout_display, which is gross. Omitted when return_usd is.
	ProfitDisplay *string `json:"profit_display,omitempty"`

	// ProofPendingPicks Published same-day picks whose holder proof is not readable yet, ordered by pick_rank. Additive and optional: present only while at least one such pick exists. While present, `picks` carries only the proof-readable picks and `pick_count` counts them. Schedule the next read from the earliest retry_at instead of polling. The route returns 503 read_model_warming only when no published pick has readable proof.
	ProofPendingPicks *[]ProofPendingPickSlot `json:"proof_pending_picks,omitempty"`

	// QualifyingExpert The qualifying category expert whose sport-specific record and real position earned this pick its top selection tier. The first-party/internal current policy admits S/A/B; public V1 exposes a compatible S/A expert and omits a current-policy B-grade expert: a candidate backed by one outranks every candidate without one. Present only on the full payload. Omitted when no wallet qualified on the backed side, on picks generated before the field existed, and on the first-party web teaser, which withholds all backed-side evidence. Frozen at SELECTION time — the wallet's position can move before the pick renders.
	QualifyingExpert *struct {
		// Address Wallet address of the qualifying expert.
		Address string `json:"address"`

		// CanonicalCategory The canonical sport bucket the win rate was measured over (for example Basketball). Can be BROADER than the pick's display_category, which names an exact league such as NBA — label the rate with this field, never with display_category.
		CanonicalCategory string `json:"canonical_category"`

		// EdgeLower95 95% lower bound of the wallet's mean calibration edge over the market price in canonical_category, in probability units (0.08 is 8 points). Positive by construction for a v2 expert; present on a v1 expert only when the wallet also holds a live v2 row.
		EdgeLower95 *float32 `json:"edge_lower_95,omitempty"`

		// EdgeMean Point estimate behind edge_lower_95.
		EdgeMean *float32 `json:"edge_mean,omitempty"`

		// Grade 0xinsider grade letter. The first-party/internal current Pick of the Day policy counts S, A, and B; public V1 exposes only the compatible S/A expert.
		Grade string `json:"grade"`

		// IndependentEventCount Independent canonical events behind the edge. At least 10 by construction for a v2 expert.
		IndependentEventCount *int `json:"independent_event_count,omitempty"`

		// Lane Present from expert policy 6. Current expert policy 10 retains the longshot requirement of live v2 only, with a positive lower bound over a large sample, large net backed value and no meaningful opposite value. Historical policy 6: a specialist required large net backed value, no meaningful opposite value, and either a live v2 positive lower bound over a large sample or a high v1 rate over enough resolved markets. Tennis requires v2. The floors are not published.
		Lane *PickOfTheDayQualifyingExpertLane `json:"lane,omitempty"`

		// LaneProbability Answered, spread-gated, index-scoped backed probability frozen only on a specialist exception.
		LaneProbability *float32 `json:"lane_probability,omitempty"`

		// LaneProbabilitySource Canonical provider probability pair branch; absent on standard experts.
		LaneProbabilitySource *PickOfTheDayQualifyingExpertLaneProbabilitySource `json:"lane_probability_source,omitempty"`

		// NResolved Resolved markets in canonical_category behind win_rate. At least 10 by construction for a source=v1 expert; null with win_rate.
		NResolved int `json:"n_resolved"`

		// Name Provider display name, or null for an unnamed wallet.
		Name string `json:"name"`

		// OppositePositionUsd The same wallet's currentValue on the OTHER outcome of this market, in USD, as of selection. Present from gate policy v5, when the floor moved to net exposure; a wallet long both sides does not qualify. Absent on picks frozen before v5, which never read the leg. 0 is a measured one-way position, not an absence.
		OppositePositionUsd *float32 `json:"opposite_position_usd,omitempty"`

		// PositionUsd Polymarket's own currentValue for this wallet on the backed outcome, in USD, as of selection. At least 1000 by construction through gate policy v7; the standard floor is 500 from v8. From gate policy v5 the floor is read on the net: position_usd minus opposite_position_usd is at least that floor, and the pick re-verifies that net against the live holder snapshot when it is released.
		PositionUsd float32 `json:"position_usd"`

		// Source Current expert policy 10 does not require a category-skill v2 specialist in any sport; in every sport a specialist raises the candidate's rank tier rather than gating it. Standard specialists need a positive edge_lower_95 over enough independent events and enough net backing on the backed side; the floors are not published. Fresh healthy records below the shared model's live sample floor can qualify; stale, unknown and degraded records cannot. Historical records preserve which definition qualified the wallet: v1, the profitability rate (win_rate over n_resolved), or v2, the forward-only category-skill calibration edge (edge_lower_95 over independent_event_count). Absent on picks frozen before the v2 definition existed; read absence as v1. A Tennis pick frozen under gate policy v4 or later carries v2 only: a v1 rate stopped qualifying a tennis expert at v4. A Tennis pick frozen under an earlier policy can still carry v1 with a win rate.
		Source *PickOfTheDayQualifyingExpertSource `json:"source,omitempty"`

		// StatsComputedAt When the skill read model behind the evidence was last rebuilt: trader_category_stats.computed_at for a source=v1 expert, category_skill_v2_current.as_of for a source=v2 expert.
		StatsComputedAt time.Time `json:"stats_computed_at"`

		// WinRate Share of this wallet's resolved markets in canonical_category whose realized P&L came out positive, as a 0..1 fraction. Above 0.60 by construction for a source=v1 expert; null for an expert who qualified on the category-skill v2 definition only. Deliberately NOT phrased as "closed profitable": the metric counts realized P&L above zero, so a resolved winner the wallet never redeemed sits at zero and counts against it.
		WinRate float32 `json:"win_rate"`
	} `json:"qualifying_expert,omitempty"`

	// ReleaseAt The pick's stored release instant. Normally the current provider kickoff minus one hour; an operator may override it. The actual publish instant can trail it because of worker or claim delay.
	ReleaseAt *time.Time `json:"release_at,omitempty"`

	// ReturnPer100 The same return on a literal $100 (100 / backed_price), kept for compatibility: the field predates stake_usd and its name promises the $100 basis, so a client that scales it to its own stake stays right. Present exactly when return_usd is.
	ReturnPer100 *float32 `json:"return_per_100,omitempty"`

	// ReturnUsd Gross return of stake_usd at the frozen midpoint price (stake_usd / backed_price). A real fill pays the ask, so an executed stake usually returns a little less. Omitted with backed_price.
	ReturnUsd *float32 `json:"return_usd,omitempty"`

	// ScheduledPicks Same-day picks selected but not yet released, ordered by pick_rank. Additive and optional: present only while at least one unreleased slot exists. Each slot exposes only its rank and schedule -- no market identity before release. Schedule the next read from the earliest release_at instead of polling.
	ScheduledPicks *[]ScheduledPickSlot `json:"scheduled_picks,omitempty"`

	// SelectionLane Frozen admission classification, full payload only. The specialist lane exempts two probability rejects and adds no rank bonus. Historical rows remain standard.
	SelectionLane *PickOfTheDaySelectionLane `json:"selection_lane,omitempty"`

	// SharpPct First-party/internal backed-side sharp-money dollar consensus as a fraction 0..1: the share of current-policy sharp dollars on the backed side. Omitted on current public V1 rows when the B-inclusive value has no reconstructible S/A equivalent. A conviction signal, NOT a probability or expected-value claim. Frozen at generation.
	SharpPct *float32 `json:"sharp_pct,omitempty"`

	// SharpUsd Recency-weighted graded-flow magnitude in USD; omitted when <= 0. Canonical key since #16308; smart_usd is its deprecated spelling, emitted beside it with the same value.
	SharpUsd *float32 `json:"sharp_usd,omitempty"`

	// SharpWalletCount Public V1 compatibility count of S/A sharp-money wallets on the backed side. The first-party/internal current policy counts S/A/B; historical rows retain their frozen policy's count. Required on every item in `picks`: a current-day published pick whose required holder proof is not safely readable is listed in `proof_pending_picks` instead of being served with a partial success shape or a synthetic zero, and the route returns 503 read_model_warming only when no published pick has readable proof. Canonical key since #16308; smart_wallet_count is its deprecated spelling, emitted beside it with the same value.
	SharpWalletCount *int `json:"sharp_wallet_count,omitempty"`

	// SideSummary One-line summary of which side sharp money is backing. Required on every item in `picks`: a current-day published pick whose required holder proof is not safely readable is listed in `proof_pending_picks` instead of being served with a partial success shape or a synthetic zero, and the route returns 503 read_model_warming only when no published pick has readable proof.
	SideSummary *string `json:"side_summary,omitempty"`

	// SmartUsd Deprecated spelling of sharp_usd, emitted beside it with the same value and never removed. Recency-weighted graded-flow magnitude in USD; omitted when <= 0.
	// Deprecated: this property has been marked as deprecated upstream, but no `x-deprecated-reason` was set
	SmartUsd *float32 `json:"smart_usd,omitempty"`

	// SmartWalletCount Deprecated spelling of sharp_wallet_count, emitted beside it with the same value and never removed. Public V1 compatibility count of S/A sharp-money wallets on the backed side. The first-party/internal current policy counts S/A/B; historical rows retain their frozen policy's count. Required on every item in `picks`: a current-day published pick whose required holder proof is not safely readable is listed in `proof_pending_picks` instead of being served with a partial success shape or a synthetic zero, and the route returns 503 read_model_warming only when no published pick has readable proof.
	// Deprecated: this property has been marked as deprecated upstream, but no `x-deprecated-reason` was set
	SmartWalletCount *int `json:"smart_wallet_count,omitempty"`

	// SportsContext Provider-first sports context for the pick's market (team logos, league branding, live score). Full-state only; omitted when the pick is not a team-sports market.
	SportsContext *PickSportsContext `json:"sports_context,omitempty"`

	// StakeUsd The flat stake the published record puts on every pick, in USD: 1000 since 2026-09-22 (it was 100 before). Present exactly when return_usd is, so a reader never has to know the stake from anywhere else.
	StakeUsd *float32 `json:"stake_usd,omitempty"`

	// State Always 'full' for an authenticated Pro key.
	State PickOfTheDayState `json:"state"`

	// Thesis Required truthful thesis. With at least one profitable-wallet holder: Profitable wallets hold {pick_outcome_label}[, led by a grade-{top_grade} trader]. Without holder backing: 0xInsider's Pick of the Day is {pick_outcome_label}. Wallet counts are not appended.
	Thesis *string `json:"thesis,omitempty"`

	// TokenId The Polymarket CLOB token id (ERC1155 asset id, decimal string) for the backed outcome; omitted when unavailable (e.g. unsynced markets).
	TokenId *string `json:"token_id,omitempty"`

	// TopGrade Best public V1-compatible S/A sharp-money grade on the backed side. The first-party/internal current policy can select B, but a current B-only grade is omitted by the stable V1 adapter. Historical rows retain their frozen policy's grade. A current-day published pick with pending legacy proof, unknown-future proof, or structurally invalid current-policy proof returns 503 before this success schema is served. Resolved legacy proof remains readable on both current-day and archive/history responses.
	TopGrade *string `json:"top_grade,omitempty"`

	// TotalGradedUsd Backed-side graded dollars the confidence is measured against (its denominator).
	TotalGradedUsd *float32 `json:"total_graded_usd,omitempty"`

	// Traders Public V1 S/A compatibility count on the backed side (equals the adapted sharp_wallet_count). The first-party/internal current policy counts S/A/B. Historical rows retain their frozen policy's count.
	Traders *int `json:"traders,omitempty"`

	// Trust 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.
	Trust *PickTrust `json:"trust,omitempty"`

	// UnitScore Net return for the pick in stake units (return_usd / stake_usd - 1); one unit is one stake_usd stake, and the figure is the same under any stake size. Omitted when the outcome is not valued.
	UnitScore *float32 `json:"unit_score,omitempty"`

	// UnitScoreDisplay Backend-formatted signed unit score, present exactly when unit_score is present.
	UnitScoreDisplay *string `json:"unit_score_display,omitempty"`
}

PickOfTheDay defines model for PickOfTheDay.

type PickOfTheDayArchive

type PickOfTheDayArchive struct {
	// Days One entry per product day that has a published pick, newest first, in the same order as picks. Each carries that day's net units, accumulated in the same backend pass and behind the same visibility gate as hit_rate.unit_score, so both cover the same population of picks. Re-adding the day totals reproduces hit_rate.unit_score to display precision rather than bit-for-bit, since that re-associates the floating-point sum.
	Days    []PickOfTheDayArchiveDay `json:"days"`
	HitRate PickOfTheDayHitRate      `json:"hit_rate"`

	// Picks Every published Pick of the Day, newest first by pick_date and then pick_rank within each product day.
	Picks []PickOfTheDayArchiveEntry `json:"picks"`
}

PickOfTheDayArchive defines model for PickOfTheDayArchive.

type PickOfTheDayArchiveDay

type PickOfTheDayArchiveDay struct {
	// Date The product day (YYYY-MM-DD).
	Date openapi_types.Date `json:"date"`

	// Losses Picks on the day that resolved as a loss, counted by the same pass as hit_rate.losses.
	Losses int `json:"losses"`

	// Pending Picks on the day not yet resolved. A day whose picks are all pending is a real 0-0 day with pending > 0, not a missing record.
	Pending int `json:"pending"`

	// Picks Published picks on the day: wins + losses + void + pending.
	Picks int `json:"picks"`

	// Sweep win when every decided pick on the day won, loss when every one lost, over at least three decided (win or loss) picks with nothing pending. Omitted for every other day. A void is not a result: it neither lifts a day over the floor nor spoils a sweep.
	Sweep *PickOfTheDayArchiveDaySweep `json:"sweep,omitempty"`

	// UnitScore Net units over the day's visible, valued, decided (win/loss) picks: the same population staked_usd runs over. Omitted when the day has not scored -- every pick still pending, every pick void, or a price-gated current row -- which is not the same as a real 0.0 day.
	UnitScore *float64 `json:"unit_score,omitempty"`

	// UnitScoreDisplay unit_score pre-formatted as signed units to two decimals (for example +1.24u or -2.00u), by the same formatter the per-pick unit_score_display and hit_rate.unit_score_display use. Present exactly when unit_score is; unit_score is the source value.
	UnitScoreDisplay *string `json:"unit_score_display,omitempty"`

	// Void Picks on the day that resolved void (stake refunded).
	Void int `json:"void"`

	// Wins Picks on the day that resolved as a win, counted by the same pass as hit_rate.wins, so the day entries sum to the headline record.
	Wins int `json:"wins"`
}

PickOfTheDayArchiveDay defines model for PickOfTheDayArchiveDay.

type PickOfTheDayArchiveDaySweep

type PickOfTheDayArchiveDaySweep string

PickOfTheDayArchiveDaySweep win when every decided pick on the day won, loss when every one lost, over at least three decided (win or loss) picks with nothing pending. Omitted for every other day. A void is not a result: it neither lifts a day over the floor nor spoils a sweep.

const (
	PickOfTheDayArchiveDaySweepLoss PickOfTheDayArchiveDaySweep = "loss"
	PickOfTheDayArchiveDaySweepWin  PickOfTheDayArchiveDaySweep = "win"
)

Defines values for PickOfTheDayArchiveDaySweep.

func (PickOfTheDayArchiveDaySweep) Valid

Valid indicates whether the value is a known member of the PickOfTheDayArchiveDaySweep enum.

type PickOfTheDayArchiveEntry

type PickOfTheDayArchiveEntry struct {
	// BackedPrice Frozen price of the backed side (0..1) that return_usd and return_per_100 were computed from: on a win, stake_usd / backed_price equals return_usd. It is the Polymarket CLOB order book midpoint at release, frozen write-once at publication, not an executed fill: a buyer lifts the ask, so a subscriber's own entry is usually a little worse than this price. Present exactly when return_usd is, so it is omitted for a still-pending pick, an unpriced win, and any pick whose backed side is withheld.
	BackedPrice *float32 `json:"backed_price,omitempty"`

	// Category Frozen canonical calibration/report bucket (e.g. "Basketball", "MMA", or "Soccer"). Existing semantics are unchanged; presentation consumers should prefer display_category when present.
	Category string `json:"category"`

	// ClvApplicability Whether CLV applies. A visible resolved pick published after kickoff is not_applicable.
	ClvApplicability *PickOfTheDayArchiveEntryClvApplicability `json:"clv_applicability,omitempty"`

	// ClvBasis Backend-owned CLV evidence basis. Source-null price-match bases preserve unknown original provenance. `historical_provider_nearby_price_match` requires a matching Polymarket point within five minutes before publication.
	ClvBasis *string `json:"clv_basis,omitempty"`

	// ClvClosePrice Close operand of clv_pct: the last valid Polymarket probability before the close bound (kickoff, or the first instant the live feed reported the game in progress when that came earlier). Present exactly when clv_pct is; the close timestamp stays private.
	ClvClosePrice *float32 `json:"clv_close_price,omitempty"`

	// ClvDisplay Backend-formatted signed CLV percentage, present exactly when clv_pct is present.
	ClvDisplay *string `json:"clv_display,omitempty"`

	// ClvEntryPrice Entry operand of clv_pct: the frozen pick probability the close is compared against. It equals backed_price, which CLV eligibility requires. Present exactly when clv_pct is.
	ClvEntryPrice *float32 `json:"clv_entry_price,omitempty"`

	// ClvExplanation Backend-owned CLV text. A measured row names the entry, then the close, then the formula (close / entry - 1) x 100 and its rounded result; otherwise it gives the reason CLV does not apply or is unavailable.
	ClvExplanation *string `json:"clv_explanation,omitempty"`

	// ClvPct Closing-line value toward the backed side, computed as (close / entry - 1) * 100. Omitted when the row is gated, ineligible, or not measured.
	ClvPct *float32 `json:"clv_pct,omitempty"`

	// ClvStatus Exact backend CLV capture disposition for this visible row. Pending and terminal provider or quality statuses are distinguishable; capture timestamps are never serialized, while a measured row's entry and close prices are published as clv_entry_price and clv_close_price.
	ClvStatus *string `json:"clv_status,omitempty"`

	// DisplayCategory Frozen public presentation category: the competition the Polymarket event belongs to. A curated label comes first -- an official league (e.g. "WNBA" or "UFC"), the esports title (e.g. "CS2", "LoL", "Dota 2" or "Valorant"), or a soccer competition (e.g. "LaLiga", "Premier League", "Serie A" or "UEFA Champions League"); any other competition carries the provider's own competition name without its season year (e.g. "UEFA Nations League", "ATP" or "Wimbledon"). It equals category only when the provider names no competition. An esports pick keeps the pooled "Esports" bucket in category, so a per-title label never implies a per-title measured cohort. Additive and optional for mixed-version client compatibility.
	DisplayCategory *string `json:"display_category,omitempty"`

	// ImageUrl Provider (Polymarket Gamma) market thumbnail URL (markets.image); omitted (not null) when the market has no image. Public regardless of the backed-side gate, so present for pending rows too.
	ImageUrl *string `json:"image_url,omitempty"`

	// Matchup Human-readable matchup (e.g. "Portugal vs. Uzbekistan").
	Matchup string `json:"matchup"`

	// Outcome Settlement outcome of the backed side; 'pending' until the market resolves.
	Outcome PickOfTheDayArchiveEntryOutcome `json:"outcome"`

	// OutcomeDisplay Pre-formatted settlement status for display: "Win" / "Loss" / "Void" / "Pending" -- the outcome enum above as a label, from the same formatter the pick payload's outcome_display uses. Convenience only; outcome is the source value.
	OutcomeDisplay *string `json:"outcome_display,omitempty"`

	// PayoutDisplay Pre-formatted return_usd as USD with cents: "$2,000.00". Present exactly when return_usd is -- it is formatted from that already-gated value -- so it is omitted for a still-pending pick, an unpriced win, and any pick whose backed side is withheld. Convenience only; return_usd is the source value.
	PayoutDisplay *string `json:"payout_display,omitempty"`

	// PickDate The pick's local publication date (YYYY-MM-DD).
	PickDate openapi_types.Date `json:"pick_date"`

	// PickOutcomeLabel The backed side's outcome label. Omitted for a still-pending pick when the request is not from an authenticated Pro key.
	PickOutcomeLabel *string `json:"pick_outcome_label,omitempty"`

	// PickRank Stable 1-based slot within the product day's ranked picks.
	PickRank *int `json:"pick_rank,omitempty"`

	// PublishedAt When this pick became public (RFC3339 UTC). pick_date above is the America/New_York product day, not an instant, so read this whenever you need a real time: reading the bare date as UTC midnight places it hours before the earliest instant a pick can drop (11:00 UTC on that date). A day's last pick can drop at 23:00 ET, which is the following UTC date. Omitted (not null) when the instant is unknown; additive and optional for mixed-version client compatibility.
	PublishedAt *time.Time `json:"published_at,omitempty"`

	// ResolvedAt When outcome was LAST written to a settled value (RFC3339 UTC), the same instant the commitment ledger publishes. It moves with a corrected market re-mapping an already-settled pick. Omitted (not null) for a pending pick and for a pick that settled before the instant was recorded, so absence means the instant is unknown, never that the pick is unsettled -- outcome answers that. Additive and optional for mixed-version client compatibility.
	ResolvedAt *time.Time `json:"resolved_at,omitempty"`

	// ReturnPer100 The same return on a literal $100 (a win returns 100 / backed_price, a loss 0, a void 100), kept for compatibility: the field predates stake_usd and its name promises the $100 basis. Present exactly when return_usd is.
	ReturnPer100 *float32 `json:"return_per_100,omitempty"`

	// ReturnUsd Gross return of stake_usd on this resolved pick: a win returns stake_usd / backed_price, a loss returns 0, a void refunds stake_usd. A loss always returns 0 (the whole stake is lost regardless of price). The operand is published beside it as backed_price on exactly the same rows, so the entry never has to be recovered by inverting this number. Omitted (not null) only for a still-pending pick or a resolved WIN with no frozen price (a win's payout needs the price); mirrors the backend skip-when-absent behavior and the route-client optional (non-nullable) schema.
	ReturnUsd *float32 `json:"return_usd,omitempty"`

	// StakeUsd The flat stake this row was valued at, in USD: 1000 since 2026-09-22 (100 before). Every row of the record is valued at the current stake, including picks published before the change. Present exactly when return_usd is.
	StakeUsd *float32 `json:"stake_usd,omitempty"`

	// TopGrade Best public V1-compatible S/A sharp-money grade on the backed side; a current B-only grade is omitted by the stable V1 adapter, while historical rows retain their frozen policy's grade. Omitted when no sharp-money wallet backs the pick, when a pending legacy proof has not yet upgraded, or when the stored holder policy is unknown-future or structurally invalid. Resolved legacy history remains supported.
	TopGrade *string `json:"top_grade,omitempty"`

	// UnitScore Net return for this pick in stake units (return_usd / stake_usd - 1), where one unit is one stake_usd stake; the same figure under any stake size. Omitted when the backed side is withheld or the pick is not valued.
	UnitScore *float32 `json:"unit_score,omitempty"`

	// UnitScoreDisplay Backend-formatted signed unit score, present exactly when unit_score is present.
	UnitScoreDisplay *string `json:"unit_score_display,omitempty"`
}

PickOfTheDayArchiveEntry defines model for PickOfTheDayArchiveEntry.

type PickOfTheDayArchiveEntryClvApplicability

type PickOfTheDayArchiveEntryClvApplicability string

PickOfTheDayArchiveEntryClvApplicability Whether CLV applies. A visible resolved pick published after kickoff is not_applicable.

const (
	PickOfTheDayArchiveEntryClvApplicabilityApplicable    PickOfTheDayArchiveEntryClvApplicability = "applicable"
	PickOfTheDayArchiveEntryClvApplicabilityNotApplicable PickOfTheDayArchiveEntryClvApplicability = "not_applicable"
)

Defines values for PickOfTheDayArchiveEntryClvApplicability.

func (PickOfTheDayArchiveEntryClvApplicability) Valid

Valid indicates whether the value is a known member of the PickOfTheDayArchiveEntryClvApplicability enum.

type PickOfTheDayArchiveEntryOutcome

type PickOfTheDayArchiveEntryOutcome string

PickOfTheDayArchiveEntryOutcome Settlement outcome of the backed side; 'pending' until the market resolves.

const (
	PickOfTheDayArchiveEntryOutcomeLoss    PickOfTheDayArchiveEntryOutcome = "loss"
	PickOfTheDayArchiveEntryOutcomePending PickOfTheDayArchiveEntryOutcome = "pending"
	PickOfTheDayArchiveEntryOutcomeVoid    PickOfTheDayArchiveEntryOutcome = "void"
	PickOfTheDayArchiveEntryOutcomeWin     PickOfTheDayArchiveEntryOutcome = "win"
)

Defines values for PickOfTheDayArchiveEntryOutcome.

func (PickOfTheDayArchiveEntryOutcome) Valid

Valid indicates whether the value is a known member of the PickOfTheDayArchiveEntryOutcome enum.

type PickOfTheDayCommitmentPayload added in v0.2.0

type PickOfTheDayCommitmentPayload struct {
	// BackedPrice Frozen pre-game price of the backed side, 0..1, as the plain decimal text of the stored NUMERIC at full stored precision, trailing zeros included. A string, never a number: a float round-trip would change the bytes and break the hash. Deliberately not normalized -- 0.545000 stays "0.545000".
	BackedPrice string `json:"backed_price"`

	// ConditionId Provider condition id of the backed market.
	ConditionId string `json:"condition_id"`

	// Kickoff Frozen provider kickoff, whole seconds, UTC, literal Z. Fixed precision, never a shortest-lossless rendering.
	Kickoff time.Time `json:"kickoff"`

	// PickDate ET product day (YYYY-MM-DD).
	PickDate openapi_types.Date `json:"pick_date"`

	// PickOutcomeIndex Index of the backed outcome within the market.
	PickOutcomeIndex PickOfTheDayCommitmentPayloadPickOutcomeIndex `json:"pick_outcome_index"`

	// PickOutcomeLabel Frozen display label of the backed outcome.
	PickOutcomeLabel string `json:"pick_outcome_label"`

	// PickRank 1-based daily slot.
	PickRank int `json:"pick_rank"`

	// Platform Provider platform. Always polymarket.
	Platform PickOfTheDayCommitmentPayloadPlatform `json:"platform"`
}

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.

type PickOfTheDayCommitmentPayloadPickOutcomeIndex added in v0.2.0

type PickOfTheDayCommitmentPayloadPickOutcomeIndex int

PickOfTheDayCommitmentPayloadPickOutcomeIndex Index of the backed outcome within the market.

const (
	PickOfTheDayCommitmentPayloadPickOutcomeIndexN0 PickOfTheDayCommitmentPayloadPickOutcomeIndex = 0
	PickOfTheDayCommitmentPayloadPickOutcomeIndexN1 PickOfTheDayCommitmentPayloadPickOutcomeIndex = 1
)

Defines values for PickOfTheDayCommitmentPayloadPickOutcomeIndex.

func (PickOfTheDayCommitmentPayloadPickOutcomeIndex) Valid added in v0.2.0

Valid indicates whether the value is a known member of the PickOfTheDayCommitmentPayloadPickOutcomeIndex enum.

type PickOfTheDayCommitmentPayloadPlatform added in v0.4.0

type PickOfTheDayCommitmentPayloadPlatform string

PickOfTheDayCommitmentPayloadPlatform Provider platform. Always polymarket.

const (
	PickOfTheDayCommitmentPayloadPlatformPolymarket PickOfTheDayCommitmentPayloadPlatform = "polymarket"
)

Defines values for PickOfTheDayCommitmentPayloadPlatform.

func (PickOfTheDayCommitmentPayloadPlatform) Valid added in v0.4.0

Valid indicates whether the value is a known member of the PickOfTheDayCommitmentPayloadPlatform enum.

type PickOfTheDayHitRate

type PickOfTheDayHitRate struct {
	// ClvApplicable Visible resolved rows published before kickoff. This is the CLV coverage denominator.
	ClvApplicable int `json:"clv_applicable"`

	// ClvAvgDisplay Backend-formatted signed average CLV percentage, present when clv_avg_pct is present.
	ClvAvgDisplay *string `json:"clv_avg_display,omitempty"`

	// ClvAvgPct Arithmetic mean of per-pick ratio CLV, (close / entry - 1) * 100. A cheap entry weighs more here than a favorite, so the headline average is clv_avg_pp; this field is kept for continuity. Suppressed until at least five measured rows exist.
	ClvAvgPct *float32 `json:"clv_avg_pct,omitempty"`

	// ClvAvgPp Arithmetic mean of the measured closing-line move in percentage points, (close - entry) * 100, so every pick counts on the same scale. The headline CLV average. Covers the same measured rows as clv_avg_pct and is suppressed under the same five-row floor.
	ClvAvgPp *float32 `json:"clv_avg_pp,omitempty"`

	// ClvAvgPpDisplay Backend-formatted signed average in percentage points, for example "+0.4 pp"; a value that rounds to zero reads "0.0 pp". Present when clv_avg_pp is present.
	ClvAvgPpDisplay *string `json:"clv_avg_pp_display,omitempty"`

	// ClvBeatsClose Measured public rows where close is strictly greater than entry.
	ClvBeatsClose int `json:"clv_beats_close"`

	// ClvCoverageDisplay Backend-formatted measured/clv_applicable coverage percentage.
	ClvCoverageDisplay *string `json:"clv_coverage_display,omitempty"`

	// ClvCoverageExplanation Backend-owned coverage count text, including the excluded post-kickoff count.
	ClvCoverageExplanation *string `json:"clv_coverage_explanation,omitempty"`

	// ClvCoveragePct Measured divided by clv_applicable as a percentage. Omitted when clv_applicable is zero.
	ClvCoveragePct *float32 `json:"clv_coverage_pct,omitempty"`

	// ClvEligible Visible resolved archive rows with valid basis-specific CLV entry evidence. Known-source bases require CLOB provenance; historical_provider_price_match instead requires source provenance to remain null and the latest provider p entry in the one-hour window at or before publication to match the stored display.
	ClvEligible int `json:"clv_eligible"`

	// ClvMeasured Eligible resolved public rows with a measured Polymarket CLOB close.
	ClvMeasured int `json:"clv_measured"`

	// ClvNotApplicable Visible resolved rows published after kickoff. These rows remain public but do not enter coverage.
	ClvNotApplicable int `json:"clv_not_applicable"`

	// ClvPending Visible resolved archive rows with no CLV capture disposition yet.
	ClvPending int `json:"clv_pending"`

	// ClvState Aggregate CLV state. Counts remain available for mixed measured/pending/unavailable populations.
	ClvState PickOfTheDayHitRateClvState `json:"clv_state"`

	// ClvTies Measured public rows where close exactly equals entry.
	ClvTies int `json:"clv_ties"`

	// ClvTotal Every visible resolved archive row, including post-kickoff picks. A price-gated current row is excluded until its backed side becomes visible.
	ClvTotal int `json:"clv_total"`

	// ClvUnavailable Visible resolved archive rows with a terminal non-measured CLV disposition.
	ClvUnavailable int `json:"clv_unavailable"`

	// Decided Number of decided picks (wins + losses); excludes void and pending.
	Decided int `json:"decided"`

	// Losses Number of decided picks that lost.
	Losses int `json:"losses"`

	// NetProfitDisplay Pre-formatted net profit for display, e.g. "+$100" / "-$40". Whole dollars, signed, round-then-signed so a rounds-to-zero record reads "+$0" (never "-$0"). Convenience only; net_profit_usd is the source value.
	NetProfitDisplay string `json:"net_profit_display"`

	// NetProfitUsd Cumulative profit (USD) of a stake_usd-per-pick strategy over visible valued decided picks: a priced win pays stake_usd/backed_price - stake_usd, every visible loss pays -stake_usd independent of price, and a void pays 0. An unpriced visible win and a current non-Insider row whose price is gated remain in wins/losses but are excluded from price-derived totals.
	NetProfitUsd float32 `json:"net_profit_usd"`

	// Pct Rolling hit rate as a percentage (wins / decided * 100, to 1 decimal); 0 when none are decided.
	Pct float32 `json:"pct"`

	// Pending Number of picks still pending resolution (excluded from the hit rate).
	Pending int `json:"pending"`

	// RoiDisplay Pre-formatted ROI for display, e.g. "+8.3%" / "-20.0%". One decimal, signed, round-then-signed so a rounds-to-zero record reads "+0.0%" (never "-0.0%"). Convenience only; roi_pct is the source value.
	RoiDisplay string `json:"roi_display"`

	// RoiPct Return on the staked amount as a percentage (net_profit_usd / staked_usd * 100, to 1 decimal); 0 when nothing is staked.
	RoiPct float32 `json:"roi_pct"`

	// Series Cumulative track-record series, one point per decided (win/loss) pick in ascending pick_date order (void and pending add no point). A non-valued decided row carries cumulative profit forward while advancing hit rate. The last point's net_profit_usd and hit_rate_pct equal the headline net_profit_usd and pct by construction. Empty when nothing is decided.
	Series *[]struct {
		// Date The decided pick's publish date (YYYY-MM-DD).
		Date openapi_types.Date `json:"date"`

		// HitRatePct Running rolling hit rate (wins / decided * 100, to 1 decimal) through this pick.
		HitRatePct float32 `json:"hit_rate_pct"`

		// NetProfitUsd Running cumulative stake_usd-per-pick profit (USD) through this pick; valued losses and priced wins are booked, while a non-valued decided row carries profit forward unchanged.
		NetProfitUsd float32 `json:"net_profit_usd"`
	} `json:"series,omitempty"`

	// StakeUsd The flat stake every money figure here assumes, in USD: 1000 since 2026-09-22 (100 before). Always present.
	StakeUsd *float32 `json:"stake_usd,omitempty"`

	// StakedUsd Total staked (USD) = stake_usd * count of visible valued decided picks: every visible loss plus every priced win. Void, unpriced wins, and current non-Insider rows whose price is gated are excluded.
	StakedUsd float32 `json:"staked_usd"`

	// UnitScore Cumulative net return in stake units over the same valued win/loss population as net_profit_usd.
	UnitScore *float32 `json:"unit_score,omitempty"`

	// UnitScoreDisplay Backend-formatted signed cumulative unit score, for example "+1.25u". Omitted when no valued settled pick contributes to the aggregate.
	UnitScoreDisplay *string `json:"unit_score_display,omitempty"`

	// Void Number of picks that resolved void (excluded from the hit rate).
	Void int `json:"void"`

	// WinRateDisplay Pre-formatted win rate for display, e.g. "92.3%". One decimal, unsigned. Convenience only; pct is the source value.
	WinRateDisplay string `json:"win_rate_display"`

	// Wins Number of decided picks that won.
	Wins int `json:"wins"`
}

PickOfTheDayHitRate defines model for PickOfTheDayHitRate.

type PickOfTheDayHitRateClvState

type PickOfTheDayHitRateClvState string

PickOfTheDayHitRateClvState Aggregate CLV state. Counts remain available for mixed measured/pending/unavailable populations.

const (
	PickOfTheDayHitRateClvStateMeasured      PickOfTheDayHitRateClvState = "measured"
	PickOfTheDayHitRateClvStateNone          PickOfTheDayHitRateClvState = "none"
	PickOfTheDayHitRateClvStateNotApplicable PickOfTheDayHitRateClvState = "not_applicable"
	PickOfTheDayHitRateClvStatePending       PickOfTheDayHitRateClvState = "pending"
	PickOfTheDayHitRateClvStateUnavailable   PickOfTheDayHitRateClvState = "unavailable"
)

Defines values for PickOfTheDayHitRateClvState.

func (PickOfTheDayHitRateClvState) Valid

Valid indicates whether the value is a known member of the PickOfTheDayHitRateClvState enum.

type PickOfTheDayLedger added in v0.2.0

type PickOfTheDayLedger struct {
	// Entries One entry per published (pick_date, pick_rank), ascending by pick_date then pick_rank.
	Entries []PickOfTheDayLedgerEntry `json:"entries"`

	// EntryCount Number of entries, all states included.
	EntryCount int `json:"entry_count"`

	// OpenedCount Entries committed to and verifiable now.
	OpenedCount int `json:"opened_count"`

	// SealedCount Entries committed to and not yet settled.
	SealedCount int `json:"sealed_count"`

	// UncommittedCount Entries carrying no commitment, so provable by nothing: the honest size of the unprovable part of the record. It only stops growing; no pick is ever retro-sealed.
	UncommittedCount int `json:"uncommitted_count"`
}

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.

type PickOfTheDayLedgerEntry added in v0.2.0

type PickOfTheDayLedgerEntry struct {
	// contains filtered or unexported fields
}

PickOfTheDayLedgerEntry One ledger entry. Read `state` to know which shape you have; the three are disjoint.

func (PickOfTheDayLedgerEntry) AsPickOfTheDayLedgerOpenedEntry added in v0.2.0

func (t PickOfTheDayLedgerEntry) AsPickOfTheDayLedgerOpenedEntry() (PickOfTheDayLedgerOpenedEntry, error)

AsPickOfTheDayLedgerOpenedEntry returns the union data inside the PickOfTheDayLedgerEntry as a PickOfTheDayLedgerOpenedEntry

func (PickOfTheDayLedgerEntry) AsPickOfTheDayLedgerSealedEntry added in v0.2.0

func (t PickOfTheDayLedgerEntry) AsPickOfTheDayLedgerSealedEntry() (PickOfTheDayLedgerSealedEntry, error)

AsPickOfTheDayLedgerSealedEntry returns the union data inside the PickOfTheDayLedgerEntry as a PickOfTheDayLedgerSealedEntry

func (PickOfTheDayLedgerEntry) AsPickOfTheDayLedgerUncommittedEntry added in v0.2.0

func (t PickOfTheDayLedgerEntry) AsPickOfTheDayLedgerUncommittedEntry() (PickOfTheDayLedgerUncommittedEntry, error)

AsPickOfTheDayLedgerUncommittedEntry returns the union data inside the PickOfTheDayLedgerEntry as a PickOfTheDayLedgerUncommittedEntry

func (PickOfTheDayLedgerEntry) Discriminator added in v0.2.0

func (t PickOfTheDayLedgerEntry) Discriminator() (string, error)

func (*PickOfTheDayLedgerEntry) FromPickOfTheDayLedgerOpenedEntry added in v0.2.0

func (t *PickOfTheDayLedgerEntry) FromPickOfTheDayLedgerOpenedEntry(v PickOfTheDayLedgerOpenedEntry) error

FromPickOfTheDayLedgerOpenedEntry overwrites any union data inside the PickOfTheDayLedgerEntry as the provided PickOfTheDayLedgerOpenedEntry

func (*PickOfTheDayLedgerEntry) FromPickOfTheDayLedgerSealedEntry added in v0.2.0

func (t *PickOfTheDayLedgerEntry) FromPickOfTheDayLedgerSealedEntry(v PickOfTheDayLedgerSealedEntry) error

FromPickOfTheDayLedgerSealedEntry overwrites any union data inside the PickOfTheDayLedgerEntry as the provided PickOfTheDayLedgerSealedEntry

func (*PickOfTheDayLedgerEntry) FromPickOfTheDayLedgerUncommittedEntry added in v0.2.0

func (t *PickOfTheDayLedgerEntry) FromPickOfTheDayLedgerUncommittedEntry(v PickOfTheDayLedgerUncommittedEntry) error

FromPickOfTheDayLedgerUncommittedEntry overwrites any union data inside the PickOfTheDayLedgerEntry as the provided PickOfTheDayLedgerUncommittedEntry

func (PickOfTheDayLedgerEntry) MarshalJSON added in v0.2.0

func (t PickOfTheDayLedgerEntry) MarshalJSON() ([]byte, error)

func (*PickOfTheDayLedgerEntry) MergePickOfTheDayLedgerOpenedEntry added in v0.2.0

func (t *PickOfTheDayLedgerEntry) MergePickOfTheDayLedgerOpenedEntry(v PickOfTheDayLedgerOpenedEntry) error

MergePickOfTheDayLedgerOpenedEntry performs a merge with any union data inside the PickOfTheDayLedgerEntry, using the provided PickOfTheDayLedgerOpenedEntry

func (*PickOfTheDayLedgerEntry) MergePickOfTheDayLedgerSealedEntry added in v0.2.0

func (t *PickOfTheDayLedgerEntry) MergePickOfTheDayLedgerSealedEntry(v PickOfTheDayLedgerSealedEntry) error

MergePickOfTheDayLedgerSealedEntry performs a merge with any union data inside the PickOfTheDayLedgerEntry, using the provided PickOfTheDayLedgerSealedEntry

func (*PickOfTheDayLedgerEntry) MergePickOfTheDayLedgerUncommittedEntry added in v0.2.0

func (t *PickOfTheDayLedgerEntry) MergePickOfTheDayLedgerUncommittedEntry(v PickOfTheDayLedgerUncommittedEntry) error

MergePickOfTheDayLedgerUncommittedEntry performs a merge with any union data inside the PickOfTheDayLedgerEntry, using the provided PickOfTheDayLedgerUncommittedEntry

func (*PickOfTheDayLedgerEntry) UnmarshalJSON added in v0.2.0

func (t *PickOfTheDayLedgerEntry) UnmarshalJSON(b []byte) error

func (PickOfTheDayLedgerEntry) ValueByDiscriminator added in v0.2.0

func (t PickOfTheDayLedgerEntry) ValueByDiscriminator() (interface{}, error)

type PickOfTheDayLedgerOpenedEntry added in v0.2.0

type PickOfTheDayLedgerOpenedEntry struct {
	// Category Frozen canonical sport bucket used for selection calibration (Basketball, MMA), not the exact public league identity; the archive owns that.
	Category string `json:"category"`

	// CommitmentAlgo The construction the hash was taken with, stated in the response so a verifier never has to guess the serialization.
	CommitmentAlgo PickOfTheDayLedgerOpenedEntryCommitmentAlgo `json:"commitment_algo"`

	// CommitmentHash sha256(canonical_json(payload) || nonce), lowercase hex, no 0x prefix. Publishable the moment the pick releases: without the nonce it is not invertible.
	CommitmentHash string `json:"commitment_hash"`

	// CommitmentNonce The 32-byte nonce the hash was taken over, lowercase hex, no 0x prefix. Secret while the pick is live: a pick payload is low entropy, so a published nonce on a live pick would hand out the backed side.
	CommitmentNonce string `json:"commitment_nonce"`

	// Kickoff The frozen provider kickoff in the canonical payload form: whole seconds, UTC, literal Z. This exact string reappears inside payload.kickoff when the pick opens.
	Kickoff time.Time `json:"kickoff"`

	// Matchup Frozen matchup, for a reader.
	Matchup string `json:"matchup"`

	// Outcome How the pick settled. Never pending: a pending pick is a sealed entry.
	Outcome PickOfTheDayLedgerOpenedEntryOutcome `json:"outcome"`

	// Payload 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.
	Payload PickOfTheDayCommitmentPayload `json:"payload"`

	// Permalink The pick's public page.
	Permalink string `json:"permalink"`

	// PickDate ET product day the pick belongs to (YYYY-MM-DD).
	PickDate openapi_types.Date `json:"pick_date"`

	// PickRank 1-based daily slot within the product day.
	PickRank int `json:"pick_rank"`

	// ResolvedAt When outcome was LAST written to a settled value, or null when that instant is unknown. It moves with a corrected market re-mapping an already-settled pick, while commitment_hash stays untouched -- which is how a mirror that keeps history sees a correction.
	ResolvedAt *time.Time `json:"resolved_at"`

	// SealedAt When the hash was frozen. Always strictly before kickoff: a pick that reaches kickoff unsealed stays unsealed forever, because a seal written after the game started would be a backdated proof.
	SealedAt time.Time                          `json:"sealed_at"`
	State    PickOfTheDayLedgerOpenedEntryState `json:"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.

type PickOfTheDayLedgerOpenedEntryCommitmentAlgo added in v0.2.0

type PickOfTheDayLedgerOpenedEntryCommitmentAlgo string

PickOfTheDayLedgerOpenedEntryCommitmentAlgo The construction the hash was taken with, stated in the response so a verifier never has to guess the serialization.

const (
	PickOfTheDayLedgerOpenedEntryCommitmentAlgoSha256CanonicalJsonPayloadnonce PickOfTheDayLedgerOpenedEntryCommitmentAlgo = "sha256(canonical_json(payload)||nonce)"
)

Defines values for PickOfTheDayLedgerOpenedEntryCommitmentAlgo.

func (PickOfTheDayLedgerOpenedEntryCommitmentAlgo) Valid added in v0.2.0

Valid indicates whether the value is a known member of the PickOfTheDayLedgerOpenedEntryCommitmentAlgo enum.

type PickOfTheDayLedgerOpenedEntryOutcome added in v0.2.0

type PickOfTheDayLedgerOpenedEntryOutcome string

PickOfTheDayLedgerOpenedEntryOutcome How the pick settled. Never pending: a pending pick is a sealed entry.

const (
	PickOfTheDayLedgerOpenedEntryOutcomeLoss PickOfTheDayLedgerOpenedEntryOutcome = "loss"
	PickOfTheDayLedgerOpenedEntryOutcomeVoid PickOfTheDayLedgerOpenedEntryOutcome = "void"
	PickOfTheDayLedgerOpenedEntryOutcomeWin  PickOfTheDayLedgerOpenedEntryOutcome = "win"
)

Defines values for PickOfTheDayLedgerOpenedEntryOutcome.

func (PickOfTheDayLedgerOpenedEntryOutcome) Valid added in v0.2.0

Valid indicates whether the value is a known member of the PickOfTheDayLedgerOpenedEntryOutcome enum.

type PickOfTheDayLedgerOpenedEntryState added in v0.2.0

type PickOfTheDayLedgerOpenedEntryState string

PickOfTheDayLedgerOpenedEntryState defines model for PickOfTheDayLedgerOpenedEntry.State.

const (
	Opened PickOfTheDayLedgerOpenedEntryState = "opened"
)

Defines values for PickOfTheDayLedgerOpenedEntryState.

func (PickOfTheDayLedgerOpenedEntryState) Valid added in v0.2.0

Valid indicates whether the value is a known member of the PickOfTheDayLedgerOpenedEntryState enum.

type PickOfTheDayLedgerSealedEntry added in v0.2.0

type PickOfTheDayLedgerSealedEntry struct {
	// CommitmentAlgo The construction the hash was taken with, stated in the response so a verifier never has to guess the serialization.
	CommitmentAlgo PickOfTheDayLedgerSealedEntryCommitmentAlgo `json:"commitment_algo"`

	// CommitmentHash sha256(canonical_json(payload) || nonce), lowercase hex, no 0x prefix. Publishable the moment the pick releases: without the nonce it is not invertible.
	CommitmentHash string `json:"commitment_hash"`

	// Kickoff The frozen provider kickoff in the canonical payload form: whole seconds, UTC, literal Z. This exact string reappears inside payload.kickoff when the pick opens.
	Kickoff time.Time `json:"kickoff"`

	// Permalink The pick's public page.
	Permalink string `json:"permalink"`

	// PickDate ET product day the pick belongs to (YYYY-MM-DD).
	PickDate openapi_types.Date `json:"pick_date"`

	// PickRank 1-based daily slot within the product day.
	PickRank int `json:"pick_rank"`

	// SealedAt When the hash was frozen. Always strictly before kickoff: a pick that reaches kickoff unsealed stays unsealed forever, because a seal written after the game started would be a backdated proof.
	SealedAt time.Time                          `json:"sealed_at"`
	State    PickOfTheDayLedgerSealedEntryState `json:"state"`
}

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.

type PickOfTheDayLedgerSealedEntryCommitmentAlgo added in v0.2.0

type PickOfTheDayLedgerSealedEntryCommitmentAlgo string

PickOfTheDayLedgerSealedEntryCommitmentAlgo The construction the hash was taken with, stated in the response so a verifier never has to guess the serialization.

const (
	PickOfTheDayLedgerSealedEntryCommitmentAlgoSha256CanonicalJsonPayloadnonce PickOfTheDayLedgerSealedEntryCommitmentAlgo = "sha256(canonical_json(payload)||nonce)"
)

Defines values for PickOfTheDayLedgerSealedEntryCommitmentAlgo.

func (PickOfTheDayLedgerSealedEntryCommitmentAlgo) Valid added in v0.2.0

Valid indicates whether the value is a known member of the PickOfTheDayLedgerSealedEntryCommitmentAlgo enum.

type PickOfTheDayLedgerSealedEntryState added in v0.2.0

type PickOfTheDayLedgerSealedEntryState string

PickOfTheDayLedgerSealedEntryState defines model for PickOfTheDayLedgerSealedEntry.State.

const (
	Sealed PickOfTheDayLedgerSealedEntryState = "sealed"
)

Defines values for PickOfTheDayLedgerSealedEntryState.

func (PickOfTheDayLedgerSealedEntryState) Valid added in v0.2.0

Valid indicates whether the value is a known member of the PickOfTheDayLedgerSealedEntryState enum.

type PickOfTheDayLedgerUncommittedEntry added in v0.2.0

type PickOfTheDayLedgerUncommittedEntry struct {
	// Category Frozen canonical sport bucket used for selection calibration (Basketball, MMA), not the exact public league identity; the archive owns that.
	Category string `json:"category"`

	// Matchup Frozen matchup, for a reader.
	Matchup string `json:"matchup"`

	// Outcome How the pick settled, or pending.
	Outcome PickOfTheDayLedgerUncommittedEntryOutcome `json:"outcome"`

	// Payload The pick's market, side and price once it has settled; null while it is pending, and null for a settled pick whose stored row lacks one of these columns. Not hashed: nothing was committed over these values, which is what pre_commitment: true says.
	Payload *PickOfTheDayUncommittedPayload `json:"payload"`

	// Permalink The pick's public page.
	Permalink string `json:"permalink"`

	// PickDate ET product day the pick belongs to (YYYY-MM-DD).
	PickDate openapi_types.Date `json:"pick_date"`

	// PickRank 1-based daily slot within the product day.
	PickRank int `json:"pick_rank"`

	// PreCommitment Always true: this pick has no commitment and never will.
	PreCommitment PickOfTheDayLedgerUncommittedEntryPreCommitment `json:"pre_commitment"`

	// ResolvedAt When outcome was LAST written to a settled value, or null when that instant is unknown. It moves with a corrected market re-mapping an already-settled pick, while commitment_hash stays untouched -- which is how a mirror that keeps history sees a correction.
	ResolvedAt *time.Time                              `json:"resolved_at"`
	State      PickOfTheDayLedgerUncommittedEntryState `json:"state"`
}

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.

type PickOfTheDayLedgerUncommittedEntryOutcome added in v0.2.0

type PickOfTheDayLedgerUncommittedEntryOutcome string

PickOfTheDayLedgerUncommittedEntryOutcome How the pick settled, or pending.

const (
	PickOfTheDayLedgerUncommittedEntryOutcomeLoss    PickOfTheDayLedgerUncommittedEntryOutcome = "loss"
	PickOfTheDayLedgerUncommittedEntryOutcomePending PickOfTheDayLedgerUncommittedEntryOutcome = "pending"
	PickOfTheDayLedgerUncommittedEntryOutcomeVoid    PickOfTheDayLedgerUncommittedEntryOutcome = "void"
	PickOfTheDayLedgerUncommittedEntryOutcomeWin     PickOfTheDayLedgerUncommittedEntryOutcome = "win"
)

Defines values for PickOfTheDayLedgerUncommittedEntryOutcome.

func (PickOfTheDayLedgerUncommittedEntryOutcome) Valid added in v0.2.0

Valid indicates whether the value is a known member of the PickOfTheDayLedgerUncommittedEntryOutcome enum.

type PickOfTheDayLedgerUncommittedEntryPreCommitment added in v0.2.0

type PickOfTheDayLedgerUncommittedEntryPreCommitment bool

PickOfTheDayLedgerUncommittedEntryPreCommitment Always true: this pick has no commitment and never will.

const (
	PickOfTheDayLedgerUncommittedEntryPreCommitmentTrue PickOfTheDayLedgerUncommittedEntryPreCommitment = true
)

Defines values for PickOfTheDayLedgerUncommittedEntryPreCommitment.

func (PickOfTheDayLedgerUncommittedEntryPreCommitment) Valid added in v0.2.0

Valid indicates whether the value is a known member of the PickOfTheDayLedgerUncommittedEntryPreCommitment enum.

type PickOfTheDayLedgerUncommittedEntryState added in v0.2.0

type PickOfTheDayLedgerUncommittedEntryState string

PickOfTheDayLedgerUncommittedEntryState defines model for PickOfTheDayLedgerUncommittedEntry.State.

const (
	Uncommitted PickOfTheDayLedgerUncommittedEntryState = "uncommitted"
)

Defines values for PickOfTheDayLedgerUncommittedEntryState.

func (PickOfTheDayLedgerUncommittedEntryState) Valid added in v0.2.0

Valid indicates whether the value is a known member of the PickOfTheDayLedgerUncommittedEntryState enum.

type PickOfTheDayOutcome

type PickOfTheDayOutcome string

PickOfTheDayOutcome Settlement outcome of the backed side; 'pending' until the market resolves.

const (
	PickOfTheDayOutcomeLoss    PickOfTheDayOutcome = "loss"
	PickOfTheDayOutcomePending PickOfTheDayOutcome = "pending"
	PickOfTheDayOutcomeVoid    PickOfTheDayOutcome = "void"
	PickOfTheDayOutcomeWin     PickOfTheDayOutcome = "win"
)

Defines values for PickOfTheDayOutcome.

func (PickOfTheDayOutcome) Valid

func (e PickOfTheDayOutcome) Valid() bool

Valid indicates whether the value is a known member of the PickOfTheDayOutcome enum.

type PickOfTheDayPlatform added in v0.4.0

type PickOfTheDayPlatform string

PickOfTheDayPlatform Provider platform. Always polymarket.

const (
	PickOfTheDayPlatformPolymarket PickOfTheDayPlatform = "polymarket"
)

Defines values for PickOfTheDayPlatform.

func (PickOfTheDayPlatform) Valid added in v0.4.0

func (e PickOfTheDayPlatform) Valid() bool

Valid indicates whether the value is a known member of the PickOfTheDayPlatform enum.

type PickOfTheDayQualifyingExpertLane

type PickOfTheDayQualifyingExpertLane string

PickOfTheDayQualifyingExpertLane Present from expert policy 6. Current expert policy 10 retains the longshot requirement of live v2 only, with a positive lower bound over a large sample, large net backed value and no meaningful opposite value. Historical policy 6: a specialist required large net backed value, no meaningful opposite value, and either a live v2 positive lower bound over a large sample or a high v1 rate over enough resolved markets. Tennis requires v2. The floors are not published.

const (
	PickOfTheDayQualifyingExpertLaneLongshotSpecialist PickOfTheDayQualifyingExpertLane = "longshot_specialist"
	PickOfTheDayQualifyingExpertLaneStandard           PickOfTheDayQualifyingExpertLane = "standard"
)

Defines values for PickOfTheDayQualifyingExpertLane.

func (PickOfTheDayQualifyingExpertLane) Valid

Valid indicates whether the value is a known member of the PickOfTheDayQualifyingExpertLane enum.

type PickOfTheDayQualifyingExpertLaneProbabilitySource

type PickOfTheDayQualifyingExpertLaneProbabilitySource string

PickOfTheDayQualifyingExpertLaneProbabilitySource Canonical provider probability pair branch; absent on standard experts.

Defines values for PickOfTheDayQualifyingExpertLaneProbabilitySource.

func (PickOfTheDayQualifyingExpertLaneProbabilitySource) Valid

Valid indicates whether the value is a known member of the PickOfTheDayQualifyingExpertLaneProbabilitySource enum.

type PickOfTheDayQualifyingExpertSource

type PickOfTheDayQualifyingExpertSource string

PickOfTheDayQualifyingExpertSource Current expert policy 10 does not require a category-skill v2 specialist in any sport; in every sport a specialist raises the candidate's rank tier rather than gating it. Standard specialists need a positive edge_lower_95 over enough independent events and enough net backing on the backed side; the floors are not published. Fresh healthy records below the shared model's live sample floor can qualify; stale, unknown and degraded records cannot. Historical records preserve which definition qualified the wallet: v1, the profitability rate (win_rate over n_resolved), or v2, the forward-only category-skill calibration edge (edge_lower_95 over independent_event_count). Absent on picks frozen before the v2 definition existed; read absence as v1. A Tennis pick frozen under gate policy v4 or later carries v2 only: a v1 rate stopped qualifying a tennis expert at v4. A Tennis pick frozen under an earlier policy can still carry v1 with a win rate.

Defines values for PickOfTheDayQualifyingExpertSource.

func (PickOfTheDayQualifyingExpertSource) Valid

Valid indicates whether the value is a known member of the PickOfTheDayQualifyingExpertSource enum.

type PickOfTheDaySelectionLane

type PickOfTheDaySelectionLane string

PickOfTheDaySelectionLane Frozen admission classification, full payload only. The specialist lane exempts two probability rejects and adds no rank bonus. Historical rows remain standard.

const (
	PickOfTheDaySelectionLaneLongshotSpecialist PickOfTheDaySelectionLane = "longshot_specialist"
	PickOfTheDaySelectionLaneStandard           PickOfTheDaySelectionLane = "standard"
)

Defines values for PickOfTheDaySelectionLane.

func (PickOfTheDaySelectionLane) Valid

func (e PickOfTheDaySelectionLane) Valid() bool

Valid indicates whether the value is a known member of the PickOfTheDaySelectionLane enum.

type PickOfTheDayState

type PickOfTheDayState string

PickOfTheDayState Always 'full' for an authenticated Pro key.

const (
	Full PickOfTheDayState = "full"
)

Defines values for PickOfTheDayState.

func (PickOfTheDayState) Valid

func (e PickOfTheDayState) Valid() bool

Valid indicates whether the value is a known member of the PickOfTheDayState enum.

type PickOfTheDayUncommittedPayload added in v0.2.0

type PickOfTheDayUncommittedPayload struct {
	// BackedPrice Frozen pre-game price of the backed side, 0..1, as the plain decimal text of the stored NUMERIC at full stored precision, trailing zeros included -- rendered exactly as the commitment payload renders it.
	BackedPrice string `json:"backed_price"`

	// ConditionId Provider condition id of the backed market.
	ConditionId string `json:"condition_id"`

	// Kickoff Frozen provider kickoff, UTC, literal Z; null when no kickoff was frozen. Whole seconds render exactly as the commitment payload does; a sub-second instant keeps its fraction rather than being truncated, since nothing here is hashed.
	Kickoff *time.Time `json:"kickoff"`

	// PickDate ET product day (YYYY-MM-DD).
	PickDate openapi_types.Date `json:"pick_date"`

	// PickOutcomeIndex Index of the backed outcome within the market.
	PickOutcomeIndex PickOfTheDayUncommittedPayloadPickOutcomeIndex `json:"pick_outcome_index"`

	// PickOutcomeLabel Frozen display label of the backed outcome.
	PickOutcomeLabel string `json:"pick_outcome_label"`

	// PickRank 1-based daily slot.
	PickRank int `json:"pick_rank"`

	// Platform Provider platform. Always polymarket.
	Platform PickOfTheDayUncommittedPayloadPlatform `json:"platform"`
}

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.

type PickOfTheDayUncommittedPayloadPickOutcomeIndex added in v0.2.0

type PickOfTheDayUncommittedPayloadPickOutcomeIndex int

PickOfTheDayUncommittedPayloadPickOutcomeIndex Index of the backed outcome within the market.

const (
	PickOfTheDayUncommittedPayloadPickOutcomeIndexN0 PickOfTheDayUncommittedPayloadPickOutcomeIndex = 0
	PickOfTheDayUncommittedPayloadPickOutcomeIndexN1 PickOfTheDayUncommittedPayloadPickOutcomeIndex = 1
)

Defines values for PickOfTheDayUncommittedPayloadPickOutcomeIndex.

func (PickOfTheDayUncommittedPayloadPickOutcomeIndex) Valid added in v0.2.0

Valid indicates whether the value is a known member of the PickOfTheDayUncommittedPayloadPickOutcomeIndex enum.

type PickOfTheDayUncommittedPayloadPlatform added in v0.4.0

type PickOfTheDayUncommittedPayloadPlatform string

PickOfTheDayUncommittedPayloadPlatform Provider platform. Always polymarket.

const (
	PickOfTheDayUncommittedPayloadPlatformPolymarket PickOfTheDayUncommittedPayloadPlatform = "polymarket"
)

Defines values for PickOfTheDayUncommittedPayloadPlatform.

func (PickOfTheDayUncommittedPayloadPlatform) Valid added in v0.4.0

Valid indicates whether the value is a known member of the PickOfTheDayUncommittedPayloadPlatform enum.

type PickSportsContext

type PickSportsContext struct {
	// CompetitionLabel Provider-owned event taxonomy from Gamma eventMetadata, joined in league · serie · tournament order with blanks and case-insensitive duplicates removed. Separate from league_name; omitted when the provider does not supply the metadata.
	CompetitionLabel *string `json:"competition_label,omitempty"`

	// EventMatchup Always present. True when the two teams are the parent-event match identity for a teamless binary leg (e.g. a draw, totals, or prop market), not the market's own outcomes.
	EventMatchup bool `json:"event_matchup"`

	// EventSubjectTeam Present only alongside event_matchup: the event team the binary leg is about (provider group_item_title matched to a matchup team, e.g. Belgium for "Will Belgium win?"), i.e. the winner on a Yes resolution. Omitted for teamless legs (draw, totals, prop).
	EventSubjectTeam *PickSportsTeam `json:"event_subject_team,omitempty"`

	// GameId Provider game identifier (Polymarket Gamma gameId); omitted when the provider supplies none.
	GameId *int `json:"game_id,omitempty"`

	LeagueLogo string `json:"league_logo"`

	// LeagueName League or competition display name (e.g. "Premier League").
	LeagueName string `json:"league_name"`

	// MatchupTitle The two teams as a single whole-game label, joined "<home> – <away>" (en-dash) in provider display order (e.g. "Portugal – Uzbekistan"). Composed server-side from the provider team names (no title/slug parsing). Present when both teams resolve a name; omitted for single-subject, teamless, or non-two-team contexts.
	MatchupTitle *string `json:"matchup_title,omitempty"`

	// NoTeam The team mapped to the market's NO outcome, or the parent-event away/second team when event_matchup is true.
	NoTeam PickSportsTeam `json:"no_team"`

	// YesTeam The team mapped to the market's YES outcome, or the parent-event home/first team when event_matchup is true.
	YesTeam PickSportsTeam `json:"yes_team"`
}

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.

type PickSportsTeam

type PickSportsTeam struct {
	// Color Team brand color as a hex string (provider-owned).
	Color string `json:"color"`

	// Format 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.
	Format *ScoreFormat `json:"format,omitempty"`

	// FullName Full team or competitor name (e.g. "Portugal national football team").
	FullName string `json:"full_name"`

	// Headshot Tennis player headshot URL, served same-origin. Present only for a tennis competitor the headshot resolver matched; absent for team sports and for unmatched players, where `logo` stays the fallback.
	Headshot *string `json:"headshot,omitempty"`

	// Label Team display label as it appears on the market outcome (e.g. "Portugal").
	Label string `json:"label"`

	Logo string `json:"logo"`

	// LogoMarkDark True when the team mark is dark enough to disappear on a dark background, measured from the artwork by the teams sync. Render a dark mark on a light plate. Always sent; false until the artwork has been measured.
	LogoMarkDark bool `json:"logo_mark_dark"`

	// ProviderId Provider team identifier (Polymarket /teams id).
	ProviderId int `json:"provider_id"`

	// Record Win-loss record as a display string (e.g. "12-4").
	Record string `json:"record"`

	// Score Live or final score as a display string when the game is in play or settled.
	Score string `json:"score"`

	// Sets Per-set score cells for this side, in set order. Backend-owned: render these rather than parsing `score`. Omitted entirely when the provider score is not a structured multi-set match or could not be parsed, so an absent array and an empty one carry the same meaning.
	Sets *[]ScoreCell `json:"sets,omitempty"`

	// SetsWon Completed sets won by this side. Present only when both sides expose the same set columns, so a partially parsed scoreline reports no tally rather than a misleading one.
	SetsWon *int `json:"sets_won,omitempty"`

	// ShortLabel Abbreviated team label (e.g. "POR").
	ShortLabel string `json:"short_label"`

	// Tour Tennis tour this competitor belongs to. Present for every tennis entry whether or not `headshot` resolved, so a consumer can tell a tennis player with no photo from a non-tennis team. Absent for every other sport. Only `atp` and `wta` name a gender; the ITF World Tennis Tour runs men's and women's events and the provider does not say which, so `itf` means tennis with gender unknown.
	Tour *PickSportsTeamTour `json:"tour,omitempty"`
}

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.

type PickSportsTeamTour

type PickSportsTeamTour string

PickSportsTeamTour Tennis tour this competitor belongs to. Present for every tennis entry whether or not `headshot` resolved, so a consumer can tell a tennis player with no photo from a non-tennis team. Absent for every other sport. Only `atp` and `wta` name a gender; the ITF World Tennis Tour runs men's and women's events and the provider does not say which, so `itf` means tennis with gender unknown.

const (
	Atp PickSportsTeamTour = "atp"
	Itf PickSportsTeamTour = "itf"
	Wta PickSportsTeamTour = "wta"
)

Defines values for PickSportsTeamTour.

func (PickSportsTeamTour) Valid

func (e PickSportsTeamTour) Valid() bool

Valid indicates whether the value is a known member of the PickSportsTeamTour enum.

type PickTrust

type PickTrust struct {
	// QualifyingExpert Provenance of the frozen qualifying category expert. source.kind=database with reconciliation.status=db_mirror means the evidence deserialized, still satisfies every frozen selection gate, and is being served. On that arm freshness.status is always not_live and never fresh, because this evidence is frozen at selection and never refreshed, so on an archived pick the as_of (the expert's own stats_computed_at) can be days or months old by design. source.kind=computed with reconciliation.status=not_applicable means the selector evaluated the backed side and nobody qualified -- a real negative. source.kind=computed with freshness.status=unknown and completeness.status=not_computed means the selector never evaluated this field, as on a pre-feature pick. source.kind=unavailable means the payload is malformed, violates a selection gate, or conflicts with its persisted status, or the public V1 adapter intentionally omitted a current-policy B-grade expert; read the reason before treating it as a negative. Do not read an omitted qualifying_expert as 'no specialist' without checking this field.
	QualifyingExpert TrustMetadata `json:"qualifying_expert"`
}

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.

type PlatformCapabilities

type PlatformCapabilities struct {
	// Grade Every capability the API serves reports supported. The field names a per-capability status so a client can branch on coverage; no other value is emitted.
	Grade PlatformCapabilityStatus `json:"grade"`

	// InsiderRadar Every capability the API serves reports supported. The field names a per-capability status so a client can branch on coverage; no other value is emitted.
	InsiderRadar PlatformCapabilityStatus `json:"insider_radar"`

	// LargeTrades The large-trade feed. Canonical key since #16304; whale_signal is its deprecated spelling, emitted beside it with the same value.
	LargeTrades PlatformCapabilityStatus `json:"large_trades"`

	// MarketSnapshot Every capability the API serves reports supported. The field names a per-capability status so a client can branch on coverage; no other value is emitted.
	MarketSnapshot PlatformCapabilityStatus `json:"market_snapshot"`

	// Pnl Every capability the API serves reports supported. The field names a per-capability status so a client can branch on coverage; no other value is emitted.
	Pnl PlatformCapabilityStatus `json:"pnl"`

	// Strategy Every capability the API serves reports supported. The field names a per-capability status so a client can branch on coverage; no other value is emitted.
	Strategy PlatformCapabilityStatus `json:"strategy"`

	// SuspiciousTrades Every capability the API serves reports supported. The field names a per-capability status so a client can branch on coverage; no other value is emitted.
	SuspiciousTrades PlatformCapabilityStatus `json:"suspicious_trades"`

	// Timeline Every capability the API serves reports supported. The field names a per-capability status so a client can branch on coverage; no other value is emitted.
	Timeline PlatformCapabilityStatus `json:"timeline"`

	// WhaleSignal Every capability the API serves reports supported. The field names a per-capability status so a client can branch on coverage; no other value is emitted.
	WhaleSignal PlatformCapabilityStatus `json:"whale_signal"`
}

PlatformCapabilities defines model for PlatformCapabilities.

type PlatformCapabilityStatus

type PlatformCapabilityStatus string

PlatformCapabilityStatus Every capability the API serves reports supported. The field names a per-capability status so a client can branch on coverage; no other value is emitted.

const (
	Supported PlatformCapabilityStatus = "supported"
)

Defines values for PlatformCapabilityStatus.

func (PlatformCapabilityStatus) Valid

func (e PlatformCapabilityStatus) Valid() bool

Valid indicates whether the value is a known member of the PlatformCapabilityStatus enum.

type Platforms

type Platforms struct {
	Platforms struct {
		Polymarket PlatformCapabilities `json:"polymarket"`
	} `json:"platforms"`
}

Platforms defines model for Platforms.

type Position

type Position struct {
	// AvgPrice Volume-weighted entry price for this leg.
	AvgPrice *float32 `json:"avg_price,omitempty"`

	// CashPnl Unrealized P&L for the open position (Polymarket `cashPnl`).
	CashPnl *float32 `json:"cash_pnl,omitempty"`

	// CurrentValueUsd Current mark-to-market value in USD (always non-null on V1 — pre-reconcile rows are excluded).
	CurrentValueUsd float32 `json:"current_value_usd"`

	// Exact Additive lossless source atoms for the display-safe position fields. Parse every `value` with decimal-safe arithmetic; never recover exact values from the numeric twins.
	Exact *PositionExact `json:"exact,omitempty"`

	// Freshness Backend-computed staleness bucket derived from last_reconciled_at.
	Freshness PositionFreshness `json:"freshness"`

	// Id Composite prefixed ID `pos_<wallet>:<condition_id>:<outcome_index>`.
	Id              string   `json:"id"`
	InitialValueUsd *float32 `json:"initial_value_usd,omitempty"`

	// LastReconciledAt Max updated_at across mirror legs for this pair.
	LastReconciledAt *time.Time `json:"last_reconciled_at,omitempty"`
	Market           struct {
		// Category Provider-backed market_canonical category.
		Category    *string    `json:"category,omitempty"`
		ConditionId string     `json:"condition_id"`
		EndDate     *time.Time `json:"end_date,omitempty"`
		EventSlug   *string    `json:"event_slug,omitempty"`

		// Id Prefixed ID (`mkt_...`).
		Id string `json:"id"`

		// OutcomeLabel Provider-reported outcome label (e.g. team name for sports). Separate from `side` because provider labels can diverge from the binary Yes/No axis.
		OutcomeLabel *string `json:"outcome_label,omitempty"`
		Slug         *string `json:"slug,omitempty"`
		Title        string  `json:"title"`
	} `json:"market"`

	// Platform Provider discriminator. Polymarket only.
	Platform PositionPlatform `json:"platform"`

	// RealizedPnl Closed-leg P&L rolled up (Polymarket `realizedPnl`).
	RealizedPnl *float32 `json:"realized_pnl,omitempty"`

	// Shares Live share count from the wallet_positions mirror.
	Shares float32 `json:"shares"`

	// Side Binary outcome side. Non-binary positions are not surfaced on V1.
	Side PositionSide `json:"side"`

	// TokenId The Polymarket CLOB token id (ERC1155 asset id, decimal string) for this outcome; null when unavailable (e.g. unsynced markets).
	TokenId string `json:"token_id"`
	Trader  struct {
		Address string               `json:"address"`
		Grade   *PositionTraderGrade `json:"grade,omitempty"`

		// Id Prefixed ID (`trd_...`).
		Id string `json:"id"`

		// IsNewWallet True when 0xinsider first recorded the wallet within the new-wallet threshold (30 days). This public V1 field is first-seen recency, not the wallet's on-chain age.
		IsNewWallet   bool     `json:"is_new_wallet"`
		Markets       *int     `json:"markets,omitempty"`
		Pnl           *float32 `json:"pnl,omitempty"`
		Username      *string  `json:"username,omitempty"`
		WalletAgeDays *float32 `json:"wallet_age_days,omitempty"`

		// WinRate Percentage 0-100.
		WinRate *float32 `json:"win_rate,omitempty"`
	} `json:"trader"`

	// Wallet Lowercased proxy wallet address.
	Wallet string `json:"wallet"`
}

Position defines model for Position.

type PositionExact added in v0.4.0

type PositionExact struct {
	// AvgPrice Exact derived price: `wallet_positions.cost_basis_usd / wallet_positions.shares`.
	AvgPrice *ExactDecimal `json:"avg_price,omitempty"`

	// CashPnl 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.
	CashPnl *ExactDecimal `json:"cash_pnl,omitempty"`

	// CostBasisUsd 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.
	CostBasisUsd *ExactDecimal `json:"cost_basis_usd,omitempty"`

	// CurrentValueUsd 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.
	CurrentValueUsd ExactDecimal `json:"current_value_usd"`

	// InitialValueUsd 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.
	InitialValueUsd *ExactDecimal `json:"initial_value_usd,omitempty"`

	// RealizedPnl 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.
	RealizedPnl *ExactDecimal `json:"realized_pnl,omitempty"`

	// Shares 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.
	Shares ExactDecimal `json:"shares"`
}

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.

type PositionFreshness

type PositionFreshness string

PositionFreshness Backend-computed staleness bucket derived from last_reconciled_at.

const (
	PositionFreshnessFresh      PositionFreshness = "fresh"
	PositionFreshnessRefreshing PositionFreshness = "refreshing"
	PositionFreshnessStale      PositionFreshness = "stale"
	PositionFreshnessUnknown    PositionFreshness = "unknown"
)

Defines values for PositionFreshness.

func (PositionFreshness) Valid

func (e PositionFreshness) Valid() bool

Valid indicates whether the value is a known member of the PositionFreshness enum.

type PositionPlatform

type PositionPlatform string

PositionPlatform Provider discriminator. Polymarket only.

const (
	PositionPlatformPolymarket PositionPlatform = "polymarket"
)

Defines values for PositionPlatform.

func (PositionPlatform) Valid

func (e PositionPlatform) Valid() bool

Valid indicates whether the value is a known member of the PositionPlatform enum.

type PositionSide

type PositionSide string

PositionSide Binary outcome side. Non-binary positions are not surfaced on V1.

const (
	PositionSideNO  PositionSide = "NO"
	PositionSideYES PositionSide = "YES"
)

Defines values for PositionSide.

func (PositionSide) Valid

func (e PositionSide) Valid() bool

Valid indicates whether the value is a known member of the PositionSide enum.

type PositionTimelineEvent

type PositionTimelineEvent struct {
	// Action From the taker's perspective.
	Action PositionTimelineEventAction `json:"action"`

	// AmountDelta Signed share delta (+ on buy, − on sell).
	AmountDelta float32 `json:"amount_delta"`

	// EventTimestamp ISO 8601 timestamp of the on-chain fill.
	EventTimestamp time.Time `json:"event_timestamp"`

	// Id Prefixed ID (pe_...).
	Id          string                           `json:"id"`
	OutcomeSide PositionTimelineEventOutcomeSide `json:"outcome_side"`

	// Price Fill price in USDC per share, in [0,1].
	Price float32 `json:"price"`

	// RunningAmount Cumulative signed stored-fill amount for this outcome after this fill, including older pages. Stable across limits/cursors for unchanged source history. Excludes split, merge, redemption and neg-risk activity; not complete holdings. Incomplete fill history can also leave a negative amount.
	RunningAmount float32 `json:"running_amount"`

	// RunningAvgPrice Cumulative buy-weighted average of stored fills for this outcome, including older pages; not provider current-position avgPrice. Sells do not change this value. 0 when no stored buys have occurred yet.
	RunningAvgPrice float32 `json:"running_avg_price"`

	// TokenId The Polymarket CLOB token id (ERC1155 asset id, decimal string) for this outcome; null when unavailable (e.g. unsynced markets).
	TokenId string `json:"token_id"`

	// TxHash Polygon transaction hash of the fill.
	TxHash string `json:"tx_hash"`

	// UsdcNotional Positive USDC notional of the fill.
	UsdcNotional float32 `json:"usdc_notional"`
}

PositionTimelineEvent defines model for PositionTimelineEvent.

type PositionTimelineEventAction

type PositionTimelineEventAction string

PositionTimelineEventAction From the taker's perspective.

const (
	Buy  PositionTimelineEventAction = "buy"
	Sell PositionTimelineEventAction = "sell"
)

Defines values for PositionTimelineEventAction.

func (PositionTimelineEventAction) Valid

Valid indicates whether the value is a known member of the PositionTimelineEventAction enum.

type PositionTimelineEventOutcomeSide

type PositionTimelineEventOutcomeSide string

PositionTimelineEventOutcomeSide defines model for PositionTimelineEvent.OutcomeSide.

const (
	PositionTimelineEventOutcomeSideNo  PositionTimelineEventOutcomeSide = "no"
	PositionTimelineEventOutcomeSideYes PositionTimelineEventOutcomeSide = "yes"
)

Defines values for PositionTimelineEventOutcomeSide.

func (PositionTimelineEventOutcomeSide) Valid

Valid indicates whether the value is a known member of the PositionTimelineEventOutcomeSide enum.

type PositionTraderGrade

type PositionTraderGrade string

PositionTraderGrade defines model for Position.Trader.Grade.

const (
	PositionTraderGradeA PositionTraderGrade = "A"
	PositionTraderGradeB PositionTraderGrade = "B"
	PositionTraderGradeC PositionTraderGrade = "C"
	PositionTraderGradeD PositionTraderGrade = "D"
	PositionTraderGradeF PositionTraderGrade = "F"
	PositionTraderGradeS PositionTraderGrade = "S"
)

Defines values for PositionTraderGrade.

func (PositionTraderGrade) Valid

func (e PositionTraderGrade) Valid() bool

Valid indicates whether the value is a known member of the PositionTraderGrade enum.

type PotdEntryAuthorization

type PotdEntryAuthorization struct {
	AuthorizationId openapi_types.UUID `json:"authorization_id"`

	// CanonicalEventId Exact provider parent event ID, or provider event ID when no parent exists.
	CanonicalEventId string `json:"canonical_event_id"`

	// Category Canonical sport bucket, not display_category.
	Category    string `json:"category"`
	ConditionId string `json:"condition_id"`

	// ExpiresAt Original provider kickoff ceiling. Never extended on retry.
	ExpiresAt time.Time `json:"expires_at"`
	IssuedAt  time.Time `json:"issued_at"`

	// MaxEntryPrice Immutable decimal limit: first fresh selected-token ask plus 0.02, floored to the provider tick below 1. Fees excluded. Never a calibrated fair probability.
	MaxEntryPrice     string                              `json:"max_entry_price"`
	OutcomeIndex      PotdEntryAuthorizationOutcomeIndex  `json:"outcome_index"`
	PolicyVersion     PotdEntryAuthorizationPolicyVersion `json:"policy_version"`
	ReferenceBestAsk  string                              `json:"reference_best_ask"`
	ReferenceBookAt   time.Time                           `json:"reference_book_at"`
	ReferenceBookHash string                              `json:"reference_book_hash"`
	TokenId           string                              `json:"token_id"`
	Version           PotdEntryAuthorizationVersion       `json:"version"`
}

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.

type PotdEntryAuthorizationOutcomeIndex

type PotdEntryAuthorizationOutcomeIndex int

PotdEntryAuthorizationOutcomeIndex defines model for PotdEntryAuthorization.OutcomeIndex.

const (
	PotdEntryAuthorizationOutcomeIndexN0 PotdEntryAuthorizationOutcomeIndex = 0
	PotdEntryAuthorizationOutcomeIndexN1 PotdEntryAuthorizationOutcomeIndex = 1
)

Defines values for PotdEntryAuthorizationOutcomeIndex.

func (PotdEntryAuthorizationOutcomeIndex) Valid

Valid indicates whether the value is a known member of the PotdEntryAuthorizationOutcomeIndex enum.

type PotdEntryAuthorizationPolicyVersion

type PotdEntryAuthorizationPolicyVersion int

PotdEntryAuthorizationPolicyVersion defines model for PotdEntryAuthorization.PolicyVersion.

Defines values for PotdEntryAuthorizationPolicyVersion.

func (PotdEntryAuthorizationPolicyVersion) Valid

Valid indicates whether the value is a known member of the PotdEntryAuthorizationPolicyVersion enum.

type PotdEntryAuthorizationVersion

type PotdEntryAuthorizationVersion int

PotdEntryAuthorizationVersion defines model for PotdEntryAuthorization.Version.

const (
	PotdEntryAuthorizationVersionN1 PotdEntryAuthorizationVersion = 1
)

Defines values for PotdEntryAuthorizationVersion.

func (PotdEntryAuthorizationVersion) Valid

Valid indicates whether the value is a known member of the PotdEntryAuthorizationVersion enum.

type PreGameSide added in v0.4.0

type PreGameSide struct {
	// ACount A-grade graded holders on the piled side.
	ACount int `json:"a_count"`

	// BCount B-grade graded holders on the piled side.
	BCount int `json:"b_count"`

	// BackedSharpUsd Raw piled-side sharp-money USD.
	BackedSharpUsd float32 `json:"backed_sharp_usd"`

	// BackingScore Grade-weighted holders times the share of their money on the side: (5*s + 4*a + 3*b) * sharp_pct. Canonical spelling of conviction_score (#16310), same value.
	BackingScore float32 `json:"backing_score"`

	// Category Canonical sport bucket (e.g. Basketball, Tennis); null when the raw category has no canonical mapping.
	Category string `json:"category"`

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

	// ConditionId Polymarket condition id.
	ConditionId string `json:"condition_id"`

	// ConvictionScore Grade-weighted pile score (5*s + 4*a + 3*b) * sharp_pct; the raw conviction input to the ranking (see directional_rank_score). Deprecated (#16310): `backing_score` is the canonical spelling and carries the same value; this key stays on the wire.
	// Deprecated: this property has been marked as deprecated upstream, but no `x-deprecated-reason` was set
	ConvictionScore float32 `json:"conviction_score"`

	// DirectionalConfidence One-way fraction of the piled graded dollars, in [0, 1] -- the metric orthogonal to sharp_pct. Stale, unknown, hedged, and two-sided dollars dilute it toward zero (conservative). Null when the directional read was not computed or classified nobody.
	DirectionalConfidence float32 `json:"directional_confidence"`

	// DirectionalRankScore The ranking key, descending: conviction_score * (1 + 0.25 * directional_confidence). Equals conviction_score when the directional read is null/zero, so signals without the read rank exactly as before.
	DirectionalRankScore float32 `json:"directional_rank_score"`
	EventSlug            string  `json:"event_slug"`

	// GameStartTime Kickoff (UTC). In the future at SNAPSHOT time and within the requested horizon; because the response is served from a shared snapshot cached up to the ~180s TTL, a served kickoff can be up to ~180s in the past relative to the response time. Not a live guarantee that the game has not yet started.
	GameStartTime time.Time `json:"game_start_time"`

	// GradedHolders Piled-side graded holder count (s_count + a_count + b_count).
	GradedHolders int `json:"graded_holders"`

	// HedgedHolderCount Piled-side graded holders classified HEDGED across the game by fresh legs (they back two or more distinct teams). A wallet long both outcomes of this market is not one-way and not counted here. Null when the directional read was not computed or classified nobody.
	HedgedHolderCount int `json:"hedged_holder_count"`

	// NetSide Aggregate recent flow direction on the market; null when unavailable.
	NetSide PreGameSideNetSide `json:"net_side"`

	// OneWayGradedUsd Piled-side graded USD held by one-way wallets (share-weighted allocation of backed_sharp_usd). Null when the directional read was not computed or classified nobody.
	OneWayGradedUsd float32 `json:"one_way_graded_usd"`

	// OneWayHolderCount Piled-side graded holders read one-way: their fresh open legs across the signal game's markets (cross-market within the one game; moneyline+spread family only) all back the same team, or, when the market's holder scan was complete, Polymarket's currentValue shows no opposite leg on this market worth 10% of the backed leg and no fresh leg opposes it. Null when the directional read was not computed (no groupable game, no holder-level data on this ranking path, or the enrichment read failed) or classified nobody.
	OneWayHolderCount int `json:"one_way_holder_count"`

	// PiledOutcomeIndex Provider binary-column selector: 0 selects outcome_yes/token_id_yes; 1 selects outcome_no/token_id_no. It does not identify home/away or a participant. Use piled_side together with title/event context for display.
	PiledOutcomeIndex int `json:"piled_outcome_index"`

	// PiledSide Nullable provider-backed piled-outcome display label. When provider group context is unavailable, it may remain a bare Yes/No/Over/Under; do not use it alone as participant identity. Deprecated (#16310): `side` is the canonical spelling and carries the same value; this key stays on the wire.
	// Deprecated: this property has been marked as deprecated upstream, but no `x-deprecated-reason` was set
	PiledSide string `json:"piled_side"`

	// Rank 1-based rank within the (min_grade-filtered) ranked result.
	Rank int `json:"rank"`

	// RankedAt UTC time at which the snapshot that ranked this row was computed. Canonical spelling of signal_created_at (#16310), same value.
	RankedAt time.Time `json:"ranked_at"`

	// RawCategory Raw provider category as stored (e.g. NBA, EPL).
	RawCategory string `json:"raw_category"`

	// SCount S-grade graded holders on the piled side.
	SCount int `json:"s_count"`

	// SharpPct Piled-side dollar concentration backed_usd / (yes_usd + no_usd), in (0.5, 1] for a real pile; null when there is no sharp USD.
	SharpPct float32 `json:"sharp_pct"`

	// Side The side profitable wallets hold, as a provider-backed display label. Canonical spelling of piled_side (#16310), same value: when provider group context is unavailable it may remain a bare Yes/No/Over/Under, so do not use it alone as participant identity.
	Side string `json:"side"`

	// SideShare Signed share of graded money on the side, (yes_usd - no_usd)/(yes_usd + no_usd) in [-1, 1] (side-yes positive, side-no negative). Canonical spelling of smart_score (#16309, #16310), same value.
	SideShare float32 `json:"side_share"`

	// SignalCreatedAt UTC time at which the immutable signal snapshot was computed. Every row from one snapshot shares this value; it is not provider market creation time and is not rewritten at request time. Deprecated (#16310): `ranked_at` is the canonical spelling and carries the same value; this key stays on the wire.
	// Deprecated: this property has been marked as deprecated upstream, but no `x-deprecated-reason` was set
	SignalCreatedAt time.Time `json:"signal_created_at"`

	// SmartScore Canonical sharp-money score (yes_usd - no_usd)/(yes_usd + no_usd) in [-1, 1] (piled-yes positive, piled-no negative); a lower-order ranking tiebreak (after directional_rank_score and conviction_score). Deprecated (#16310): `side_share` is the canonical spelling and carries the same value; this key stays on the wire.
	// Deprecated: this property has been marked as deprecated upstream, but no `x-deprecated-reason` was set
	SmartScore float32 `json:"smart_score"`
	Title      string  `json:"title"`

	// TokenId Polymarket CLOB token id (ERC1155 asset id, decimal string) for the PILED outcome; null when unavailable.
	TokenId string `json:"token_id"`

	// TopGrade Best grade present on the piled side; null when none.
	TopGrade PreGameSideTopGrade `json:"top_grade"`

	// Volume Market volume (USD).
	Volume float32 `json:"volume"`
}

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.

type PreGameSideCategorySkill added in v0.4.0

type PreGameSideCategorySkill struct {
	AsOf                      time.Time                              `json:"as_of"`
	BackedSharpUsd            float32                                `json:"backed_sharp_usd"`
	CanonicalCategory         string                                 `json:"canonical_category"`
	CoveragePct               float32                                `json:"coverage_pct"`
	CoveredBackedUsd          float32                                `json:"covered_backed_usd"`
	CoveredHolders            int                                    `json:"covered_holders"`
	EligibleHolders           int                                    `json:"eligible_holders"`
	LargestHolderBackedUsdPct float32                                `json:"largest_holder_backed_usd_pct"`
	MinimumHolderEventCount   int                                    `json:"minimum_holder_event_count"`
	ModelVersion              string                                 `json:"model_version"`
	ObservationStartedAt      time.Time                              `json:"observation_started_at"`
	Platform                  PreGameSideCategorySkillPlatform       `json:"platform"`
	Scope                     PreGameSideCategorySkillScope          `json:"scope"`
	SourceCoverage            PreGameSideCategorySkillSourceCoverage `json:"source_coverage"`
	SpecialistBackedUsd       float32                                `json:"specialist_backed_usd"`
	SpecialistBackedUsdPct    float32                                `json:"specialist_backed_usd_pct"`
	Status                    PreGameSideCategorySkillStatus         `json:"status"`
	TaxonomyVersion           string                                 `json:"taxonomy_version"`
	WeightedEdgeMean          float32                                `json:"weighted_edge_mean"`
	WeightedHolderLowerMean   float32                                `json:"weighted_holder_lower_mean"`
}

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.

type PreGameSideCategorySkillPlatform added in v0.4.0

type PreGameSideCategorySkillPlatform string

PreGameSideCategorySkillPlatform defines model for PreGameSideCategorySkill.Platform.

const (
	PreGameSideCategorySkillPlatformPolymarket PreGameSideCategorySkillPlatform = "polymarket"
)

Defines values for PreGameSideCategorySkillPlatform.

func (PreGameSideCategorySkillPlatform) Valid added in v0.4.0

Valid indicates whether the value is a known member of the PreGameSideCategorySkillPlatform enum.

type PreGameSideCategorySkillScope added in v0.4.0

type PreGameSideCategorySkillScope string

PreGameSideCategorySkillScope defines model for PreGameSideCategorySkill.Scope.

const (
	PreGameSideCategorySkillScopeObservedGoldskyPrimaryTakerFill PreGameSideCategorySkillScope = "observed_goldsky_primary_taker_fill"
)

Defines values for PreGameSideCategorySkillScope.

func (PreGameSideCategorySkillScope) Valid added in v0.4.0

Valid indicates whether the value is a known member of the PreGameSideCategorySkillScope enum.

type PreGameSideCategorySkillSourceCoverage added in v0.4.0

type PreGameSideCategorySkillSourceCoverage string

PreGameSideCategorySkillSourceCoverage defines model for PreGameSideCategorySkill.SourceCoverage.

const (
	PreGameSideCategorySkillSourceCoverageGradedWalletFills          PreGameSideCategorySkillSourceCoverage = "graded_wallet_fills"
	PreGameSideCategorySkillSourceCoveragePartialWhaleThresholdFills PreGameSideCategorySkillSourceCoverage = "partial_whale_threshold_fills"
)

Defines values for PreGameSideCategorySkillSourceCoverage.

func (PreGameSideCategorySkillSourceCoverage) Valid added in v0.4.0

Valid indicates whether the value is a known member of the PreGameSideCategorySkillSourceCoverage enum.

type PreGameSideCategorySkillStatus added in v0.4.0

type PreGameSideCategorySkillStatus string

PreGameSideCategorySkillStatus defines model for PreGameSideCategorySkill.Status.

const (
	PreGameSideCategorySkillStatusDegraded     PreGameSideCategorySkillStatus = "degraded"
	PreGameSideCategorySkillStatusInsufficient PreGameSideCategorySkillStatus = "insufficient"
	PreGameSideCategorySkillStatusLive         PreGameSideCategorySkillStatus = "live"
	PreGameSideCategorySkillStatusStale        PreGameSideCategorySkillStatus = "stale"
	PreGameSideCategorySkillStatusUnknown      PreGameSideCategorySkillStatus = "unknown"
)

Defines values for PreGameSideCategorySkillStatus.

func (PreGameSideCategorySkillStatus) Valid added in v0.4.0

Valid indicates whether the value is a known member of the PreGameSideCategorySkillStatus enum.

type PreGameSideFunnelReport added in v0.4.0

type PreGameSideFunnelReport struct {
	Sports []PreGameSideSportFunnelReport `json:"sports"`
}

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

type PreGameSideNetSide added in v0.4.0

type PreGameSideNetSide string

PreGameSideNetSide Aggregate recent flow direction on the market; null when unavailable.

const (
	PreGameSideNetSideBUY  PreGameSideNetSide = "BUY"
	PreGameSideNetSideSELL PreGameSideNetSide = "SELL"
)

Defines values for PreGameSideNetSide.

func (PreGameSideNetSide) Valid added in v0.4.0

func (e PreGameSideNetSide) Valid() bool

Valid indicates whether the value is a known member of the PreGameSideNetSide enum.

type PreGameSideObservation added in v0.4.0

type PreGameSideObservation struct {
	ACount int `json:"a_count"`
	BCount int `json:"b_count"`

	// BackedPrice Provider-backed implied price for the piled outcome at observation time.
	BackedPrice float32 `json:"backed_price"`

	// BackedSharpUsd Raw graded-holder USD on the piled outcome.
	BackedSharpUsd float32 `json:"backed_sharp_usd"`

	// BackingScore Grade-weighted holder-pile score before directional enrichment. Canonical spelling of conviction_score (#16310), same value.
	BackingScore float32 `json:"backing_score"`

	// Category Canonical sport bucket.
	Category PreGameSideObservationCategory `json:"category"`

	// Cohort Source cohort or additive projection view. emerging_pile is projected from wider_holder after source computation, overlaps its funnel denominator, and uses the source row's directional evidence.
	Cohort PreGameSideObservationCohort `json:"cohort"`

	// ConditionId Raw Polymarket condition id.
	ConditionId string `json:"condition_id"`

	// ConvictionScore Grade-weighted holder-pile score before directional enrichment. Deprecated (#16310): `backing_score` is the canonical spelling and carries the same value; this key stays on the wire.
	// Deprecated: this property has been marked as deprecated upstream, but no `x-deprecated-reason` was set
	ConvictionScore       float32 `json:"conviction_score"`
	DirectionalConfidence float32 `json:"directional_confidence"`

	// DirectionalRankScore Default cohort ordering key: conviction_score * (1 + 0.25 * directional_confidence), or conviction_score when confidence is null.
	DirectionalRankScore float32 `json:"directional_rank_score"`

	// DirectionalStatus Truthful state of the directional read, which classifies each graded holder by its fresh synced legs across the game's markets and, when holder_scan_complete is true, by Polymarket's currentValue on both outcomes of this market. A wider_holder row can remain emitted with unavailable and terminal wider_holder_emitted; in_play fails closed instead and terminates as in_play_directional_unavailable.
	DirectionalStatus PreGameSideObservationDirectionalStatus `json:"directional_status"`

	// EventId Provider event id when available.
	EventId   string `json:"event_id"`
	EventSlug string `json:"event_slug"`

	// GameStartTime Provider-backed kickoff time in UTC.
	GameStartTime time.Time `json:"game_start_time"`

	// GradedHolders Piled-side S/A/B holder count.
	GradedHolders     int `json:"graded_holders"`
	HedgedHolderCount int `json:"hedged_holder_count"`

	// HolderScanComplete True only when neither provider outcome holder page hit the top-100 scan bound. False means the pile is a positive lower bound and cannot satisfy a future capital-promotion gate.
	HolderScanComplete bool `json:"holder_scan_complete"`

	// HolderSnapshotAt Proven provider holder observation time. A warm cache hit uses only the original provider completion time from its companion metadata, never cache-read time. Null, malformed, future, or stale holder time fails in-play closed.
	HolderSnapshotAt time.Time `json:"holder_snapshot_at"`

	// ObservationOnly Always true. This row must not be routed to an order executor.
	ObservationOnly PreGameSideObservationObservationOnly `json:"observation_only"`

	// ObservedAt UTC instant when this row finished provider/holder evaluation.
	ObservedAt        time.Time `json:"observed_at"`
	OneWayGradedUsd   float32   `json:"one_way_graded_usd"`
	OneWayHolderCount int       `json:"one_way_holder_count"`

	// ParentEventId Provider parent-event id used as the first event-cap identity when available.
	ParentEventId string `json:"parent_event_id"`

	// PiledOutcomeIndex Provider binary-column selector: 0 selects outcome_yes/token_id_yes; 1 selects outcome_no/token_id_no. It does not identify home/away or a participant. Use piled_side together with title/event context for display.
	PiledOutcomeIndex PreGameSideObservationPiledOutcomeIndex `json:"piled_outcome_index"`

	// PiledSide Nullable provider-backed piled-outcome display label. When provider group context is unavailable, it may remain a bare Yes/No/Over/Under; do not use it alone as participant identity. Deprecated (#16310): `side` is the canonical spelling and carries the same value; this key stays on the wire.
	// Deprecated: this property has been marked as deprecated upstream, but no `x-deprecated-reason` was set
	PiledSide string `json:"piled_side"`

	// ProviderReadSource Whether the provider holder page came from the shared cache or a live provider read.
	ProviderReadSource PreGameSideObservationProviderReadSource `json:"provider_read_source"`

	// Rank 1-based rank within this observation cohort and snapshot.
	Rank int `json:"rank"`

	// RawCategory Raw provider category as stored.
	RawCategory string `json:"raw_category"`
	SCount      int    `json:"s_count"`

	// SharpPct Piled-side graded-holder dollar concentration.
	SharpPct float32 `json:"sharp_pct"`

	// Side The side profitable wallets hold, as a provider-backed display label. Canonical spelling of piled_side (#16310), same value: when provider group context is unavailable it may remain a bare Yes/No/Over/Under, so do not use it alone as participant identity.
	Side string `json:"side"`

	// SideShare Signed share of graded money on the side, in [-1, 1]. Canonical spelling of smart_score (#16309, #16310), same value.
	SideShare float32 `json:"side_share"`

	// SmartScore Canonical signed holder-pile score. Deprecated (#16310): `side_share` is the canonical spelling and carries the same value; this key stays on the wire.
	// Deprecated: this property has been marked as deprecated upstream, but no `x-deprecated-reason` was set
	SmartScore float32 `json:"smart_score"`

	// Title Provider-backed market title.
	Title string `json:"title"`

	// TokenId Provider-backed Polymarket CLOB token id for the piled outcome. Rows without a verified token terminate before emission.
	TokenId  string                         `json:"token_id"`
	TopGrade PreGameSideObservationTopGrade `json:"top_grade"`

	// Volume Strictly positive stored market volume in USD. Missing, zero, or non-finite volume terminates as invalid_market and is never emitted as an observation.
	Volume float32 `json:"volume"`
}

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.

type PreGameSideObservationCategory added in v0.4.0

type PreGameSideObservationCategory string

PreGameSideObservationCategory Canonical sport bucket.

const (
	PreGameSideObservationCategoryBaseball    PreGameSideObservationCategory = "Baseball"
	PreGameSideObservationCategoryBasketball  PreGameSideObservationCategory = "Basketball"
	PreGameSideObservationCategoryBoxing      PreGameSideObservationCategory = "Boxing"
	PreGameSideObservationCategoryCricket     PreGameSideObservationCategory = "Cricket"
	PreGameSideObservationCategoryEsports     PreGameSideObservationCategory = "Esports"
	PreGameSideObservationCategoryFootball    PreGameSideObservationCategory = "Football"
	PreGameSideObservationCategoryGolf        PreGameSideObservationCategory = "Golf"
	PreGameSideObservationCategoryHockey      PreGameSideObservationCategory = "Hockey"
	PreGameSideObservationCategoryMMA         PreGameSideObservationCategory = "MMA"
	PreGameSideObservationCategoryPickleball  PreGameSideObservationCategory = "Pickleball"
	PreGameSideObservationCategoryRacing      PreGameSideObservationCategory = "Racing"
	PreGameSideObservationCategorySoccer      PreGameSideObservationCategory = "Soccer"
	PreGameSideObservationCategoryTableTennis PreGameSideObservationCategory = "Table Tennis"
	PreGameSideObservationCategoryTennis      PreGameSideObservationCategory = "Tennis"
)

Defines values for PreGameSideObservationCategory.

func (PreGameSideObservationCategory) Valid added in v0.4.0

Valid indicates whether the value is a known member of the PreGameSideObservationCategory enum.

type PreGameSideObservationCohort added in v0.4.0

type PreGameSideObservationCohort string

PreGameSideObservationCohort Source cohort or additive projection view. emerging_pile is projected from wider_holder after source computation, overlaps its funnel denominator, and uses the source row's directional evidence.

const (
	PreGameSideObservationCohortEmergingPile PreGameSideObservationCohort = "emerging_pile"
	PreGameSideObservationCohortInPlay       PreGameSideObservationCohort = "in_play"
	PreGameSideObservationCohortWiderHolder  PreGameSideObservationCohort = "wider_holder"
)

Defines values for PreGameSideObservationCohort.

func (PreGameSideObservationCohort) Valid added in v0.4.0

Valid indicates whether the value is a known member of the PreGameSideObservationCohort enum.

type PreGameSideObservationDirectionalStatus added in v0.4.0

type PreGameSideObservationDirectionalStatus string

PreGameSideObservationDirectionalStatus Truthful state of the directional read, which classifies each graded holder by its fresh synced legs across the game's markets and, when holder_scan_complete is true, by Polymarket's currentValue on both outcomes of this market. A wider_holder row can remain emitted with unavailable and terminal wider_holder_emitted; in_play fails closed instead and terminates as in_play_directional_unavailable.

const (
	PreGameSideObservationDirectionalStatusAvailable        PreGameSideObservationDirectionalStatus = "available"
	PreGameSideObservationDirectionalStatusUnavailable      PreGameSideObservationDirectionalStatus = "unavailable"
	PreGameSideObservationDirectionalStatusUnknownStale     PreGameSideObservationDirectionalStatus = "unknown_stale"
	PreGameSideObservationDirectionalStatusUnknownUngrouped PreGameSideObservationDirectionalStatus = "unknown_ungrouped"
)

Defines values for PreGameSideObservationDirectionalStatus.

func (PreGameSideObservationDirectionalStatus) Valid added in v0.4.0

Valid indicates whether the value is a known member of the PreGameSideObservationDirectionalStatus enum.

type PreGameSideObservationObservationOnly added in v0.4.0

type PreGameSideObservationObservationOnly bool

PreGameSideObservationObservationOnly Always true. This row must not be routed to an order executor.

const (
	PreGameSideObservationObservationOnlyTrue PreGameSideObservationObservationOnly = true
)

Defines values for PreGameSideObservationObservationOnly.

func (PreGameSideObservationObservationOnly) Valid added in v0.4.0

Valid indicates whether the value is a known member of the PreGameSideObservationObservationOnly enum.

type PreGameSideObservationPiledOutcomeIndex added in v0.4.0

type PreGameSideObservationPiledOutcomeIndex int

PreGameSideObservationPiledOutcomeIndex Provider binary-column selector: 0 selects outcome_yes/token_id_yes; 1 selects outcome_no/token_id_no. It does not identify home/away or a participant. Use piled_side together with title/event context for display.

const (
	PreGameSideObservationPiledOutcomeIndexN0 PreGameSideObservationPiledOutcomeIndex = 0
	PreGameSideObservationPiledOutcomeIndexN1 PreGameSideObservationPiledOutcomeIndex = 1
)

Defines values for PreGameSideObservationPiledOutcomeIndex.

func (PreGameSideObservationPiledOutcomeIndex) Valid added in v0.4.0

Valid indicates whether the value is a known member of the PreGameSideObservationPiledOutcomeIndex enum.

type PreGameSideObservationProviderReadSource added in v0.4.0

type PreGameSideObservationProviderReadSource string

PreGameSideObservationProviderReadSource Whether the provider holder page came from the shared cache or a live provider read.

const (
	PreGameSideObservationProviderReadSourceCached PreGameSideObservationProviderReadSource = "cached"
	PreGameSideObservationProviderReadSourceLive   PreGameSideObservationProviderReadSource = "live"
)

Defines values for PreGameSideObservationProviderReadSource.

func (PreGameSideObservationProviderReadSource) Valid added in v0.4.0

Valid indicates whether the value is a known member of the PreGameSideObservationProviderReadSource enum.

type PreGameSideObservationTopGrade added in v0.4.0

type PreGameSideObservationTopGrade string

PreGameSideObservationTopGrade defines model for PreGameSideObservation.TopGrade.

const (
	PreGameSideObservationTopGradeA PreGameSideObservationTopGrade = "A"
	PreGameSideObservationTopGradeB PreGameSideObservationTopGrade = "B"
	PreGameSideObservationTopGradeS PreGameSideObservationTopGrade = "S"
)

Defines values for PreGameSideObservationTopGrade.

func (PreGameSideObservationTopGrade) Valid added in v0.4.0

Valid indicates whether the value is a known member of the PreGameSideObservationTopGrade enum.

type PreGameSideSportFunnelReport added in v0.4.0

type PreGameSideSportFunnelReport struct {
	// BoardInput Unique condition ids independently visible on the provider-first sports board.
	BoardInput int `json:"board_input"`

	// BoardLiveAvailable Whether the always-applicable live-board source completed as available. False can mean a completed source failure (board_source_unavailable) or live-board work missing an internal configured-scope deadline or the outer fair-wave deadline (board_deadline_unavailable); inspect terminals to distinguish them.
	BoardLiveAvailable bool `json:"board_live_available"`

	// BoardUpcomingAvailable Whether every configured upcoming-board scope completed as available. False with board_upcoming_configured=false means not applicable. When board_upcoming_configured is true and this flag is false, read board_upcoming_status for the cause (it reads unknown, i.e. no recorded cause, only on a snapshot cached before that field existed, which self-clears within one TTL): the board_source_unavailable and board_deadline_unavailable terminals are assigned only to already-started rows (the live half) and are structurally 0 for the upcoming source, so they never explain this flag.
	BoardUpcomingAvailable bool `json:"board_upcoming_available"`

	// BoardUpcomingConfigured Whether a provider-backed upcoming-board source is configured and applicable for this sport. False means not applicable, not provider failure.
	BoardUpcomingConfigured bool `json:"board_upcoming_configured"`

	// BoardUpcomingStatus Why the upcoming-board source is (un)available. Board supply is one canonical-sport union: the bare category owns live truth and every configured composed league scope contributes upcoming rows; folded leagues without a configured board (currently NCAAB and CFL) are not in the upcoming union. available: every configured scope completed truthfully (a successful empty schedule still counts). capacity_limited: provider pagination or a configured upcoming cache published an intentionally bounded complete-event prefix; those rows are excluded from diagnostic-universe input and must not be treated as a complete upcoming universe. Cache-bound prefixes are limited to 3,000 rows or an exact 5,000,000-byte final envelope. source_unavailable: composition failed before a truthful union; resolved scope readers turn half failures into cold_unavailable, so fresh producers are whole-union identity reconciliation or a registry contract failure and carry zero rows. cold_unavailable: every scope completed but at least one reported its upcoming half unavailable because no servable entry was inside the stale-serve bound and the background warm did not land in time; it is not by itself proof of a provider outage. deadline_unavailable: an internal configured-scope deadline or the outer bounded fair wave expired. An internal deadline may retain healthy bare-category or sibling-scope rows; the outer wave records zero rows. These upcoming fields do not describe league live-membership availability. If the bare-category live scope fails, all live rows are dropped even when a league scope completed, because the bare category is the sole live-truth owner. not_configured: no upcoming scope applies to the sport. unknown: exactly one cause -- a snapshot cached before this field existed whose legacy flags recorded an unavailable-but-configured half without saying why. Every freshly computed snapshot reports a concrete status, and a legacy available or not-configured row is reconstructed exactly, so unknown self-clears within one TTL. board_upcoming_available is exactly board_upcoming_status == available.
	BoardUpcomingStatus PreGameSideSportFunnelReportBoardUpcomingStatus `json:"board_upcoming_status"`

	// BoardUpcomingUnavailableScopes Configured upcoming scopes that did not complete as available. Values are category, a provider league tag slug (nfl, cfb, nba, wnba, nhl, mls, valorant, league-of-legends, counter-strike-2, or dota-2), registry when the compiled scope/projection contract drifted, union when cross-scope identity reconciliation failed, or wave when the outer fair-wave deadline expired before scope-level evidence returned. Empty means no unavailable upcoming scope was identified; this includes healthy/not-configured rows and a legacy cached row. Observation league scopes are upcoming-only and perform no live-membership read.
	BoardUpcomingUnavailableScopes []PreGameSideSportFunnelReportBoardUpcomingUnavailableScopes `json:"board_upcoming_unavailable_scopes"`

	// Input Stored-universe rows plus provider-board rows missing from storage.
	Input int `json:"input"`

	// Reconciled True exactly when input equals terminal_total.
	Reconciled bool                              `json:"reconciled"`
	Sport      PreGameSideSportFunnelReportSport `json:"sport"`

	// TerminalTotal Sum of every sparse terminal count.
	TerminalTotal int `json:"terminal_total"`

	// Terminals Sparse counts over the closed 25-value terminal vocabulary: 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, or internal_unclassified. primary_slate_candidate means exact admission by the funded route's raw shared signals query before provider/holder enrichment; recent-flow rows rejected by its event, bucket, or total caps remain eligible for wider_holder measurement. capacity_limited is intentional bounded provider-work admission, is fully accounted here, and does not itself set degraded=true. board_source_unavailable means a completed board source was unavailable; board_deadline_unavailable means live-board work missed either an internal configured-scope deadline or the outer fair-wave deadline; provider_unavailable means an attempted holder-provider read failed; holder_deadline_unavailable means holder cache/provider work missed the absolute request deadline; holder_computation_unavailable means post-holder provider or DB-backed price/metadata evaluation was unavailable.
	Terminals map[string]int `json:"terminals"`
}

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

type PreGameSideSportFunnelReportBoardUpcomingStatus added in v0.4.0

type PreGameSideSportFunnelReportBoardUpcomingStatus string

PreGameSideSportFunnelReportBoardUpcomingStatus Why the upcoming-board source is (un)available. Board supply is one canonical-sport union: the bare category owns live truth and every configured composed league scope contributes upcoming rows; folded leagues without a configured board (currently NCAAB and CFL) are not in the upcoming union. available: every configured scope completed truthfully (a successful empty schedule still counts). capacity_limited: provider pagination or a configured upcoming cache published an intentionally bounded complete-event prefix; those rows are excluded from diagnostic-universe input and must not be treated as a complete upcoming universe. Cache-bound prefixes are limited to 3,000 rows or an exact 5,000,000-byte final envelope. source_unavailable: composition failed before a truthful union; resolved scope readers turn half failures into cold_unavailable, so fresh producers are whole-union identity reconciliation or a registry contract failure and carry zero rows. cold_unavailable: every scope completed but at least one reported its upcoming half unavailable because no servable entry was inside the stale-serve bound and the background warm did not land in time; it is not by itself proof of a provider outage. deadline_unavailable: an internal configured-scope deadline or the outer bounded fair wave expired. An internal deadline may retain healthy bare-category or sibling-scope rows; the outer wave records zero rows. These upcoming fields do not describe league live-membership availability. If the bare-category live scope fails, all live rows are dropped even when a league scope completed, because the bare category is the sole live-truth owner. not_configured: no upcoming scope applies to the sport. unknown: exactly one cause -- a snapshot cached before this field existed whose legacy flags recorded an unavailable-but-configured half without saying why. Every freshly computed snapshot reports a concrete status, and a legacy available or not-configured row is reconstructed exactly, so unknown self-clears within one TTL. board_upcoming_available is exactly board_upcoming_status == available.

const (
	PreGameSideSportFunnelReportBoardUpcomingStatusAvailable           PreGameSideSportFunnelReportBoardUpcomingStatus = "available"
	PreGameSideSportFunnelReportBoardUpcomingStatusCapacityLimited     PreGameSideSportFunnelReportBoardUpcomingStatus = "capacity_limited"
	PreGameSideSportFunnelReportBoardUpcomingStatusColdUnavailable     PreGameSideSportFunnelReportBoardUpcomingStatus = "cold_unavailable"
	PreGameSideSportFunnelReportBoardUpcomingStatusDeadlineUnavailable PreGameSideSportFunnelReportBoardUpcomingStatus = "deadline_unavailable"
	PreGameSideSportFunnelReportBoardUpcomingStatusNotConfigured       PreGameSideSportFunnelReportBoardUpcomingStatus = "not_configured"
	PreGameSideSportFunnelReportBoardUpcomingStatusSourceUnavailable   PreGameSideSportFunnelReportBoardUpcomingStatus = "source_unavailable"
	PreGameSideSportFunnelReportBoardUpcomingStatusUnknown             PreGameSideSportFunnelReportBoardUpcomingStatus = "unknown"
)

Defines values for PreGameSideSportFunnelReportBoardUpcomingStatus.

func (PreGameSideSportFunnelReportBoardUpcomingStatus) Valid added in v0.4.0

Valid indicates whether the value is a known member of the PreGameSideSportFunnelReportBoardUpcomingStatus enum.

type PreGameSideSportFunnelReportBoardUpcomingUnavailableScopes added in v0.4.0

type PreGameSideSportFunnelReportBoardUpcomingUnavailableScopes string

PreGameSideSportFunnelReportBoardUpcomingUnavailableScopes defines model for PreGameSideSportFunnelReport.BoardUpcomingUnavailableScopes.

func (PreGameSideSportFunnelReportBoardUpcomingUnavailableScopes) Valid added in v0.4.0

Valid indicates whether the value is a known member of the PreGameSideSportFunnelReportBoardUpcomingUnavailableScopes enum.

type PreGameSideSportFunnelReportSport added in v0.4.0

type PreGameSideSportFunnelReportSport string

PreGameSideSportFunnelReportSport defines model for PreGameSideSportFunnelReport.Sport.

const (
	PreGameSideSportFunnelReportSportBaseball    PreGameSideSportFunnelReportSport = "Baseball"
	PreGameSideSportFunnelReportSportBasketball  PreGameSideSportFunnelReportSport = "Basketball"
	PreGameSideSportFunnelReportSportBoxing      PreGameSideSportFunnelReportSport = "Boxing"
	PreGameSideSportFunnelReportSportCricket     PreGameSideSportFunnelReportSport = "Cricket"
	PreGameSideSportFunnelReportSportEsports     PreGameSideSportFunnelReportSport = "Esports"
	PreGameSideSportFunnelReportSportFootball    PreGameSideSportFunnelReportSport = "Football"
	PreGameSideSportFunnelReportSportGolf        PreGameSideSportFunnelReportSport = "Golf"
	PreGameSideSportFunnelReportSportHockey      PreGameSideSportFunnelReportSport = "Hockey"
	PreGameSideSportFunnelReportSportMMA         PreGameSideSportFunnelReportSport = "MMA"
	PreGameSideSportFunnelReportSportPickleball  PreGameSideSportFunnelReportSport = "Pickleball"
	PreGameSideSportFunnelReportSportRacing      PreGameSideSportFunnelReportSport = "Racing"
	PreGameSideSportFunnelReportSportSoccer      PreGameSideSportFunnelReportSport = "Soccer"
	PreGameSideSportFunnelReportSportTableTennis PreGameSideSportFunnelReportSport = "Table Tennis"
	PreGameSideSportFunnelReportSportTennis      PreGameSideSportFunnelReportSport = "Tennis"
)

Defines values for PreGameSideSportFunnelReportSport.

func (PreGameSideSportFunnelReportSport) Valid added in v0.4.0

Valid indicates whether the value is a known member of the PreGameSideSportFunnelReportSport enum.

type PreGameSideTopGrade added in v0.4.0

type PreGameSideTopGrade string

PreGameSideTopGrade Best grade present on the piled side; null when none.

const (
	PreGameSideTopGradeA PreGameSideTopGrade = "A"
	PreGameSideTopGradeB PreGameSideTopGrade = "B"
	PreGameSideTopGradeS PreGameSideTopGrade = "S"
)

Defines values for PreGameSideTopGrade.

func (PreGameSideTopGrade) Valid added in v0.4.0

func (e PreGameSideTopGrade) Valid() bool

Valid indicates whether the value is a known member of the PreGameSideTopGrade enum.

type PrepareWebhookSecret200JSONResponseBodyObject added in v0.3.0

type PrepareWebhookSecret200JSONResponseBodyObject string

PrepareWebhookSecret200JSONResponseBodyObject defines parameters for PrepareWebhookSecret.

const (
	PrepareWebhookSecret200JSONResponseBodyObjectWebhook PrepareWebhookSecret200JSONResponseBodyObject = "webhook"
)

Defines values for PrepareWebhookSecret200JSONResponseBodyObject.

func (PrepareWebhookSecret200JSONResponseBodyObject) Valid added in v0.3.0

Valid indicates whether the value is a known member of the PrepareWebhookSecret200JSONResponseBodyObject enum.

type PrepareWebhookSecretParams added in v0.3.0

type PrepareWebhookSecretParams struct {
	// IdempotencyKey Optional safe-retry key. Reuse the same value only when retrying the exact same mutation request body; a different body returns 422 and an in-flight matching request returns 409.
	IdempotencyKey *string `json:"Idempotency-Key,omitempty"`
}

PrepareWebhookSecretParams defines parameters for PrepareWebhookSecret.

type PrepareWebhookSecretResponse added in v0.3.0

type PrepareWebhookSecretResponse struct {
	Body         []byte
	HTTPResponse *http.Response
	// JSON200 the response for an HTTP 200 `application/json` response
	JSON200 *struct {
		Data   WebhookEndpoint                               `json:"data"`
		Meta   ResponseMeta                                  `json:"meta"`
		Object PrepareWebhookSecret200JSONResponseBodyObject `json:"object"`
	}
	// JSON400 the response for an HTTP 400 `application/json` response
	JSON400 *ApiError
	// JSON401 the response for an HTTP 401 `application/json` response
	JSON401 *ApiError
	// JSON402 the response for an HTTP 402 `application/json` response
	JSON402 *ApiError
	// JSON403 the response for an HTTP 403 `application/json` response
	JSON403 *ApiError
	// JSON404 the response for an HTTP 404 `application/json` response
	JSON404 *ApiError
	// JSON408 the response for an HTTP 408 `application/json` response
	JSON408 *ApiError
	// JSON409 the response for an HTTP 409 `application/json` response
	JSON409 *ApiError
	// JSON422 the response for an HTTP 422 `application/json` response
	JSON422 *ApiError
	// JSON423 the response for an HTTP 423 `application/json` response
	JSON423 *ApiError
	// JSON429 the response for an HTTP 429 `application/json` response
	JSON429 *ApiError
	// JSON500 the response for an HTTP 500 `application/json` response
	JSON500 *ApiError
	// JSON503 the response for an HTTP 503 `application/json` response
	JSON503 *ApiError
}

func ParsePrepareWebhookSecretResponse added in v0.3.0

func ParsePrepareWebhookSecretResponse(rsp *http.Response) (*PrepareWebhookSecretResponse, error)

ParsePrepareWebhookSecretResponse parses an HTTP response from a PrepareWebhookSecretWithResponse call

func (PrepareWebhookSecretResponse) ContentType added in v0.3.0

func (r PrepareWebhookSecretResponse) ContentType() string

ContentType is a convenience method to retrieve the Content-Type value from the HTTP response headers

func (PrepareWebhookSecretResponse) GetBody added in v0.3.0

func (r PrepareWebhookSecretResponse) GetBody() []byte

GetBody returns the raw response body bytes

func (PrepareWebhookSecretResponse) GetJSON200 added in v0.3.0

func (r PrepareWebhookSecretResponse) GetJSON200() *struct {
	Data   WebhookEndpoint                               `json:"data"`
	Meta   ResponseMeta                                  `json:"meta"`
	Object PrepareWebhookSecret200JSONResponseBodyObject `json:"object"`
}

GetJSON200 returns the response for an HTTP 200 `application/json` response

func (PrepareWebhookSecretResponse) GetJSON400 added in v0.3.0

func (r PrepareWebhookSecretResponse) GetJSON400() *ApiError

GetJSON400 returns the response for an HTTP 400 `application/json` response

func (PrepareWebhookSecretResponse) GetJSON401 added in v0.3.0

func (r PrepareWebhookSecretResponse) GetJSON401() *ApiError

GetJSON401 returns the response for an HTTP 401 `application/json` response

func (PrepareWebhookSecretResponse) GetJSON402 added in v0.3.0

func (r PrepareWebhookSecretResponse) GetJSON402() *ApiError

GetJSON402 returns the response for an HTTP 402 `application/json` response

func (PrepareWebhookSecretResponse) GetJSON403 added in v0.3.0

func (r PrepareWebhookSecretResponse) GetJSON403() *ApiError

GetJSON403 returns the response for an HTTP 403 `application/json` response

func (PrepareWebhookSecretResponse) GetJSON404 added in v0.3.0

func (r PrepareWebhookSecretResponse) GetJSON404() *ApiError

GetJSON404 returns the response for an HTTP 404 `application/json` response

func (PrepareWebhookSecretResponse) GetJSON408 added in v0.3.0

func (r PrepareWebhookSecretResponse) GetJSON408() *ApiError

GetJSON408 returns the response for an HTTP 408 `application/json` response

func (PrepareWebhookSecretResponse) GetJSON409 added in v0.3.0

func (r PrepareWebhookSecretResponse) GetJSON409() *ApiError

GetJSON409 returns the response for an HTTP 409 `application/json` response

func (PrepareWebhookSecretResponse) GetJSON422 added in v0.3.0

func (r PrepareWebhookSecretResponse) GetJSON422() *ApiError

GetJSON422 returns the response for an HTTP 422 `application/json` response

func (PrepareWebhookSecretResponse) GetJSON423 added in v0.3.0

func (r PrepareWebhookSecretResponse) GetJSON423() *ApiError

GetJSON423 returns the response for an HTTP 423 `application/json` response

func (PrepareWebhookSecretResponse) GetJSON429 added in v0.3.0

func (r PrepareWebhookSecretResponse) GetJSON429() *ApiError

GetJSON429 returns the response for an HTTP 429 `application/json` response

func (PrepareWebhookSecretResponse) GetJSON500 added in v0.3.0

func (r PrepareWebhookSecretResponse) GetJSON500() *ApiError

GetJSON500 returns the response for an HTTP 500 `application/json` response

func (PrepareWebhookSecretResponse) GetJSON503 added in v0.3.0

func (r PrepareWebhookSecretResponse) GetJSON503() *ApiError

GetJSON503 returns the response for an HTTP 503 `application/json` response

func (PrepareWebhookSecretResponse) Status added in v0.3.0

Status returns HTTPResponse.Status

func (PrepareWebhookSecretResponse) StatusCode added in v0.3.0

func (r PrepareWebhookSecretResponse) StatusCode() int

StatusCode returns HTTPResponse.StatusCode

type ProofPendingPickSlot

type ProofPendingPickSlot struct {
	// Kickoff The backed game's frozen kickoff instant; absent for a legacy row without one.
	Kickoff *time.Time `json:"kickoff,omitempty"`

	// PickRank Stable 1-based slot within the product day's ranked picks. The pick keeps this rank once its proof is readable and it moves into `picks`.
	PickRank int `json:"pick_rank"`

	// ReleaseAt The pick's stored release instant.
	ReleaseAt time.Time `json:"release_at"`

	// RetryAt Recommended next read: 30 seconds ahead while pre-game proof is warming, one hour ahead for a post-kickoff pending legacy row that only settlement can make readable. Schedule against it instead of polling.
	RetryAt time.Time `json:"retry_at"`
}

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.

type RedeliverWebhookDelivery200JSONResponseBodyObject added in v0.2.0

type RedeliverWebhookDelivery200JSONResponseBodyObject string

RedeliverWebhookDelivery200JSONResponseBodyObject defines parameters for RedeliverWebhookDelivery.

const (
	RedeliverWebhookDelivery200JSONResponseBodyObjectWebhookDelivery RedeliverWebhookDelivery200JSONResponseBodyObject = "webhook_delivery"
)

Defines values for RedeliverWebhookDelivery200JSONResponseBodyObject.

func (RedeliverWebhookDelivery200JSONResponseBodyObject) Valid added in v0.2.0

Valid indicates whether the value is a known member of the RedeliverWebhookDelivery200JSONResponseBodyObject enum.

type RedeliverWebhookDeliveryParams added in v0.2.0

type RedeliverWebhookDeliveryParams struct {
	// XQueryValidation Opt into strict query-name validation. The default is compatible: unknown names are ignored and reported in X-Query-Ignored. With strict, an unknown name returns 400 bad_request with error.reason unknown_query_parameter before the handler runs, including when its percent escape is incomplete.
	XQueryValidation *RedeliverWebhookDeliveryParamsXQueryValidation `json:"X-Query-Validation,omitempty"`

	// IdempotencyKey Optional safe-retry key. Reuse the same value only when retrying the exact same mutation request body; a different body returns 422 and an in-flight matching request returns 409.
	IdempotencyKey *string `json:"Idempotency-Key,omitempty"`
}

RedeliverWebhookDeliveryParams defines parameters for RedeliverWebhookDelivery.

type RedeliverWebhookDeliveryParamsXQueryValidation added in v0.3.0

type RedeliverWebhookDeliveryParamsXQueryValidation string

RedeliverWebhookDeliveryParamsXQueryValidation defines parameters for RedeliverWebhookDelivery.

const (
	RedeliverWebhookDeliveryParamsXQueryValidationStrict RedeliverWebhookDeliveryParamsXQueryValidation = "strict"
)

Defines values for RedeliverWebhookDeliveryParamsXQueryValidation.

func (RedeliverWebhookDeliveryParamsXQueryValidation) Valid added in v0.3.0

Valid indicates whether the value is a known member of the RedeliverWebhookDeliveryParamsXQueryValidation enum.

type RedeliverWebhookDeliveryResponse added in v0.2.0

type RedeliverWebhookDeliveryResponse struct {
	Body         []byte
	HTTPResponse *http.Response
	// JSON200 the response for an HTTP 200 `application/json` response
	JSON200 *struct {
		// Data 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.
		Data   WebhookDelivery                                   `json:"data"`
		Meta   ResponseMeta                                      `json:"meta"`
		Object RedeliverWebhookDelivery200JSONResponseBodyObject `json:"object"`
	}
	// JSON400 the response for an HTTP 400 `application/json` response
	JSON400 *ApiError
	// JSON401 the response for an HTTP 401 `application/json` response
	JSON401 *ApiError
	// JSON402 the response for an HTTP 402 `application/json` response
	JSON402 *ApiError
	// JSON403 the response for an HTTP 403 `application/json` response
	JSON403 *ApiError
	// JSON404 the response for an HTTP 404 `application/json` response
	JSON404 *ApiError
	// JSON408 the response for an HTTP 408 `application/json` response
	JSON408 *ApiError
	// JSON409 the response for an HTTP 409 `application/json` response
	JSON409 *ApiError
	// JSON422 the response for an HTTP 422 `application/json` response
	JSON422 *ApiError
	// JSON423 the response for an HTTP 423 `application/json` response
	JSON423 *ApiError
	// JSON429 the response for an HTTP 429 `application/json` response
	JSON429 *ApiError
	// JSON500 the response for an HTTP 500 `application/json` response
	JSON500 *ApiError
	// JSON503 the response for an HTTP 503 `application/json` response
	JSON503 *ApiError
	// Headers200 the parsed response headers for an HTTP 200 response
	Headers200 *RedeliverWebhookDeliveryResponse200Headers
	// Headers429 the parsed response headers for an HTTP 429 response
	Headers429 *RedeliverWebhookDeliveryResponse429Headers
	// Headers503 the parsed response headers for an HTTP 503 response
	Headers503 *RedeliverWebhookDeliveryResponse503Headers
}

func ParseRedeliverWebhookDeliveryResponse added in v0.2.0

func ParseRedeliverWebhookDeliveryResponse(rsp *http.Response) (*RedeliverWebhookDeliveryResponse, error)

ParseRedeliverWebhookDeliveryResponse parses an HTTP response from a RedeliverWebhookDeliveryWithResponse call

func (RedeliverWebhookDeliveryResponse) ContentType added in v0.2.0

func (r RedeliverWebhookDeliveryResponse) ContentType() string

ContentType is a convenience method to retrieve the Content-Type value from the HTTP response headers

func (RedeliverWebhookDeliveryResponse) GetBody added in v0.2.0

func (r RedeliverWebhookDeliveryResponse) GetBody() []byte

GetBody returns the raw response body bytes

func (RedeliverWebhookDeliveryResponse) GetJSON200 added in v0.2.0

func (r RedeliverWebhookDeliveryResponse) GetJSON200() *struct {
	// Data 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.
	Data   WebhookDelivery                                   `json:"data"`
	Meta   ResponseMeta                                      `json:"meta"`
	Object RedeliverWebhookDelivery200JSONResponseBodyObject `json:"object"`
}

GetJSON200 returns the response for an HTTP 200 `application/json` response

func (RedeliverWebhookDeliveryResponse) GetJSON400 added in v0.2.0

GetJSON400 returns the response for an HTTP 400 `application/json` response

func (RedeliverWebhookDeliveryResponse) GetJSON401 added in v0.2.0

GetJSON401 returns the response for an HTTP 401 `application/json` response

func (RedeliverWebhookDeliveryResponse) GetJSON402 added in v0.2.0

GetJSON402 returns the response for an HTTP 402 `application/json` response

func (RedeliverWebhookDeliveryResponse) GetJSON403 added in v0.2.0

GetJSON403 returns the response for an HTTP 403 `application/json` response

func (RedeliverWebhookDeliveryResponse) GetJSON404 added in v0.2.0

GetJSON404 returns the response for an HTTP 404 `application/json` response

func (RedeliverWebhookDeliveryResponse) GetJSON408 added in v0.2.0

GetJSON408 returns the response for an HTTP 408 `application/json` response

func (RedeliverWebhookDeliveryResponse) GetJSON409 added in v0.2.0

GetJSON409 returns the response for an HTTP 409 `application/json` response

func (RedeliverWebhookDeliveryResponse) GetJSON422 added in v0.2.0

GetJSON422 returns the response for an HTTP 422 `application/json` response

func (RedeliverWebhookDeliveryResponse) GetJSON423 added in v0.2.0

GetJSON423 returns the response for an HTTP 423 `application/json` response

func (RedeliverWebhookDeliveryResponse) GetJSON429 added in v0.2.0

GetJSON429 returns the response for an HTTP 429 `application/json` response

func (RedeliverWebhookDeliveryResponse) GetJSON500 added in v0.2.0

GetJSON500 returns the response for an HTTP 500 `application/json` response

func (RedeliverWebhookDeliveryResponse) GetJSON503 added in v0.2.0

GetJSON503 returns the response for an HTTP 503 `application/json` response

func (RedeliverWebhookDeliveryResponse) Status added in v0.2.0

Status returns HTTPResponse.Status

func (RedeliverWebhookDeliveryResponse) StatusCode added in v0.2.0

func (r RedeliverWebhookDeliveryResponse) StatusCode() int

StatusCode returns HTTPResponse.StatusCode

type RedeliverWebhookDeliveryResponse200Headers added in v0.2.0

type RedeliverWebhookDeliveryResponse200Headers struct {
	RateLimitLimit      *int
	RateLimitRemaining  *int
	RateLimitReset      *int
	ServerTiming        *string
	XEffectiveQuery     *string
	XQueryIgnored       *string
	XRateLimitLimit     *int
	XRateLimitRemaining *int
	XRateLimitReset     *int
	XRequestId          *string
	XUsageAccounting    *string
}

RedeliverWebhookDeliveryResponse200Headers the declared response headers of an HTTP 200 response for RedeliverWebhookDelivery

type RedeliverWebhookDeliveryResponse429Headers added in v0.2.0

type RedeliverWebhookDeliveryResponse429Headers struct {
	RateLimitLimit      *int
	RateLimitRemaining  *int
	RateLimitReset      *int
	RetryAfter          *int
	XRateLimitLimit     *int
	XRateLimitRemaining *int
	XRateLimitReset     *int
	XRequestId          *string
}

RedeliverWebhookDeliveryResponse429Headers the declared response headers of an HTTP 429 response for RedeliverWebhookDelivery

type RedeliverWebhookDeliveryResponse503Headers added in v0.2.0

type RedeliverWebhookDeliveryResponse503Headers struct {
	RetryAfter *int
	XRequestId *string
}

RedeliverWebhookDeliveryResponse503Headers the declared response headers of an HTTP 503 response for RedeliverWebhookDelivery

type RedirectApiOpenapiSpecParams added in v0.3.0

type RedirectApiOpenapiSpecParams struct {
	// XQueryValidation Opt into strict query-name validation. The default is compatible: unknown names are ignored and reported in X-Query-Ignored. With strict, an unknown name returns 400 bad_request with error.reason unknown_query_parameter before the handler runs, including when its percent escape is incomplete.
	XQueryValidation *RedirectApiOpenapiSpecParamsXQueryValidation `json:"X-Query-Validation,omitempty"`
}

RedirectApiOpenapiSpecParams defines parameters for RedirectApiOpenapiSpec.

type RedirectApiOpenapiSpecParamsXQueryValidation added in v0.3.0

type RedirectApiOpenapiSpecParamsXQueryValidation string

RedirectApiOpenapiSpecParamsXQueryValidation defines parameters for RedirectApiOpenapiSpec.

const (
	RedirectApiOpenapiSpecParamsXQueryValidationStrict RedirectApiOpenapiSpecParamsXQueryValidation = "strict"
)

Defines values for RedirectApiOpenapiSpecParamsXQueryValidation.

func (RedirectApiOpenapiSpecParamsXQueryValidation) Valid added in v0.3.0

Valid indicates whether the value is a known member of the RedirectApiOpenapiSpecParamsXQueryValidation enum.

type RedirectApiOpenapiSpecResponse

type RedirectApiOpenapiSpecResponse struct {
	Body         []byte
	HTTPResponse *http.Response
	// JSON408 the response for an HTTP 408 `application/json` response
	JSON408 *ApiError
	// JSON429 the response for an HTTP 429 `application/json` response
	JSON429 *ApiError
	// JSON500 the response for an HTTP 500 `application/json` response
	JSON500 *ApiError
	// Headers307 the parsed response headers for an HTTP 307 response
	Headers307 *RedirectApiOpenapiSpecResponse307Headers
	// Headers429 the parsed response headers for an HTTP 429 response
	Headers429 *RedirectApiOpenapiSpecResponse429Headers
}

func ParseRedirectApiOpenapiSpecResponse

func ParseRedirectApiOpenapiSpecResponse(rsp *http.Response) (*RedirectApiOpenapiSpecResponse, error)

ParseRedirectApiOpenapiSpecResponse parses an HTTP response from a RedirectApiOpenapiSpecWithResponse call

func (RedirectApiOpenapiSpecResponse) ContentType

func (r RedirectApiOpenapiSpecResponse) ContentType() string

ContentType is a convenience method to retrieve the Content-Type value from the HTTP response headers

func (RedirectApiOpenapiSpecResponse) GetBody

func (r RedirectApiOpenapiSpecResponse) GetBody() []byte

GetBody returns the raw response body bytes

func (RedirectApiOpenapiSpecResponse) GetJSON408 added in v0.2.0

func (r RedirectApiOpenapiSpecResponse) GetJSON408() *ApiError

GetJSON408 returns the response for an HTTP 408 `application/json` response

func (RedirectApiOpenapiSpecResponse) GetJSON429

func (r RedirectApiOpenapiSpecResponse) GetJSON429() *ApiError

GetJSON429 returns the response for an HTTP 429 `application/json` response

func (RedirectApiOpenapiSpecResponse) GetJSON500

func (r RedirectApiOpenapiSpecResponse) GetJSON500() *ApiError

GetJSON500 returns the response for an HTTP 500 `application/json` response

func (RedirectApiOpenapiSpecResponse) Status

Status returns HTTPResponse.Status

func (RedirectApiOpenapiSpecResponse) StatusCode

func (r RedirectApiOpenapiSpecResponse) StatusCode() int

StatusCode returns HTTPResponse.StatusCode

type RedirectApiOpenapiSpecResponse307Headers

type RedirectApiOpenapiSpecResponse307Headers struct {
	Location            string
	RateLimitLimit      *int
	RateLimitRemaining  *int
	RateLimitReset      *int
	ServerTiming        *string
	XRateLimitLimit     *int
	XRateLimitRemaining *int
	XRateLimitReset     *int
}

RedirectApiOpenapiSpecResponse307Headers the declared response headers of an HTTP 307 response for RedirectApiOpenapiSpec

type RedirectApiOpenapiSpecResponse429Headers

type RedirectApiOpenapiSpecResponse429Headers struct {
	RateLimitLimit      *int
	RateLimitRemaining  *int
	RateLimitReset      *int
	RetryAfter          *int
	XRateLimitLimit     *int
	XRateLimitRemaining *int
	XRateLimitReset     *int
	XRequestId          *string
}

RedirectApiOpenapiSpecResponse429Headers the declared response headers of an HTTP 429 response for RedirectApiOpenapiSpec

type RegisterAgent201JSONResponseBodyObject added in v0.2.0

type RegisterAgent201JSONResponseBodyObject string

RegisterAgent201JSONResponseBodyObject defines parameters for RegisterAgent.

const (
	RegisterAgent201JSONResponseBodyObjectAgentRegistration RegisterAgent201JSONResponseBodyObject = "agent_registration"
)

Defines values for RegisterAgent201JSONResponseBodyObject.

func (RegisterAgent201JSONResponseBodyObject) Valid added in v0.2.0

Valid indicates whether the value is a known member of the RegisterAgent201JSONResponseBodyObject enum.

type RegisterAgentParams added in v0.3.0

type RegisterAgentParams struct {
	// XQueryValidation Opt into strict query-name validation. The default is compatible: unknown names are ignored and reported in X-Query-Ignored. With strict, an unknown name returns 400 bad_request with error.reason unknown_query_parameter before the handler runs, including when its percent escape is incomplete.
	XQueryValidation *RegisterAgentParamsXQueryValidation `json:"X-Query-Validation,omitempty"`
}

RegisterAgentParams defines parameters for RegisterAgent.

type RegisterAgentParamsXQueryValidation added in v0.3.0

type RegisterAgentParamsXQueryValidation string

RegisterAgentParamsXQueryValidation defines parameters for RegisterAgent.

const (
	RegisterAgentParamsXQueryValidationStrict RegisterAgentParamsXQueryValidation = "strict"
)

Defines values for RegisterAgentParamsXQueryValidation.

func (RegisterAgentParamsXQueryValidation) Valid added in v0.3.0

Valid indicates whether the value is a known member of the RegisterAgentParamsXQueryValidation enum.

type RegisterAgentResponse added in v0.2.0

type RegisterAgentResponse struct {
	Body         []byte
	HTTPResponse *http.Response
	// JSON201 the response for an HTTP 201 `application/json` response
	JSON201 *struct {
		// Data 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.
		Data   AgentRegistration                      `json:"data"`
		Meta   ResponseMeta                           `json:"meta"`
		Object RegisterAgent201JSONResponseBodyObject `json:"object"`
	}
	// JSON408 the response for an HTTP 408 `application/json` response
	JSON408 *ApiError
	// JSON429 the response for an HTTP 429 `application/json` response
	JSON429 *ApiError
	// JSON500 the response for an HTTP 500 `application/json` response
	JSON500 *ApiError
	// Headers201 the parsed response headers for an HTTP 201 response
	Headers201 *RegisterAgentResponse201Headers
	// Headers429 the parsed response headers for an HTTP 429 response
	Headers429 *RegisterAgentResponse429Headers
}

func ParseRegisterAgentResponse added in v0.2.0

func ParseRegisterAgentResponse(rsp *http.Response) (*RegisterAgentResponse, error)

ParseRegisterAgentResponse parses an HTTP response from a RegisterAgentWithResponse call

func (RegisterAgentResponse) ContentType added in v0.2.0

func (r RegisterAgentResponse) ContentType() string

ContentType is a convenience method to retrieve the Content-Type value from the HTTP response headers

func (RegisterAgentResponse) GetBody added in v0.2.0

func (r RegisterAgentResponse) GetBody() []byte

GetBody returns the raw response body bytes

func (RegisterAgentResponse) GetJSON201 added in v0.2.0

func (r RegisterAgentResponse) GetJSON201() *struct {
	// Data 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.
	Data   AgentRegistration                      `json:"data"`
	Meta   ResponseMeta                           `json:"meta"`
	Object RegisterAgent201JSONResponseBodyObject `json:"object"`
}

GetJSON201 returns the response for an HTTP 201 `application/json` response

func (RegisterAgentResponse) GetJSON408 added in v0.2.0

func (r RegisterAgentResponse) GetJSON408() *ApiError

GetJSON408 returns the response for an HTTP 408 `application/json` response

func (RegisterAgentResponse) GetJSON429 added in v0.2.0

func (r RegisterAgentResponse) GetJSON429() *ApiError

GetJSON429 returns the response for an HTTP 429 `application/json` response

func (RegisterAgentResponse) GetJSON500 added in v0.2.0

func (r RegisterAgentResponse) GetJSON500() *ApiError

GetJSON500 returns the response for an HTTP 500 `application/json` response

func (RegisterAgentResponse) Status added in v0.2.0

func (r RegisterAgentResponse) Status() string

Status returns HTTPResponse.Status

func (RegisterAgentResponse) StatusCode added in v0.2.0

func (r RegisterAgentResponse) StatusCode() int

StatusCode returns HTTPResponse.StatusCode

type RegisterAgentResponse201Headers added in v0.2.0

type RegisterAgentResponse201Headers struct {
	RateLimitLimit      *int
	RateLimitRemaining  *int
	RateLimitReset      *int
	ServerTiming        *string
	XEffectiveQuery     *string
	XQueryIgnored       *string
	XRateLimitLimit     *int
	XRateLimitRemaining *int
	XRateLimitReset     *int
}

RegisterAgentResponse201Headers the declared response headers of an HTTP 201 response for RegisterAgent

type RegisterAgentResponse429Headers added in v0.2.0

type RegisterAgentResponse429Headers struct {
	RateLimitLimit      *int
	RateLimitRemaining  *int
	RateLimitReset      *int
	RetryAfter          *int
	XRateLimitLimit     *int
	XRateLimitRemaining *int
	XRateLimitReset     *int
	XRequestId          *string
}

RegisterAgentResponse429Headers the declared response headers of an HTTP 429 response for RegisterAgent

type ReportPayload

type ReportPayload struct {
	ActiveTraders    int                      `json:"active_traders"`
	BiggestTradeSize float32                  `json:"biggest_trade_size"`
	Categories       []map[string]interface{} `json:"categories"`

	// GradeDistribution Counts of current grades for distinct Polymarket traders with at least one whale alert in the report's source date range. The grade is the current projection at snapshot materialization time, not a historical grade at trade time. Traders without a current ranking projection are omitted; a null grade entry means the active trader's current grade is unavailable.
	GradeDistribution []map[string]interface{} `json:"grade_distribution"`

	// TopLargeTrades Canonical key since #16304; top_whale_trades is its deprecated spelling, emitted beside it with the same value.
	TopLargeTrades []struct {
		// Id Whale trade id.
		Id int64 `json:"id"`

		// MarketCategory Provider market category.
		MarketCategory string `json:"market_category"`

		// Name Trader display name, when known.
		Name string `json:"name"`

		// Outcome Provider outcome label for the traded side.
		Outcome string `json:"outcome"`

		// Platform Always polymarket, or null when the row carries no stored value.
		Platform ReportPayloadTopLargeTradesPlatform `json:"platform"`

		// Price Trade price in provider [0, 1] units.
		Price float32 `json:"price"`

		// Pseudonym Trader pseudonym, when no display name is known.
		Pseudonym string `json:"pseudonym"`

		// Side Trade direction (BUY or SELL), not the outcome side.
		Side string `json:"side"`

		// Size Trade size in USD.
		Size float32 `json:"size"`

		// Title Market title.
		Title string `json:"title"`

		// TokenId The Polymarket CLOB token id (ERC1155 asset id, decimal string) for the traded outcome; null when unavailable (e.g. unsynced markets).
		TokenId string `json:"token_id"`

		// TradeTime Trade timestamp (UTC).
		TradeTime time.Time `json:"trade_time"`

		// TraderGrade Trader grade (S-F) at snapshot time.
		TraderGrade string `json:"trader_grade"`
	} `json:"top_large_trades"`
	TopWhaleTrades []struct {
		// Id Whale trade id.
		Id int64 `json:"id"`

		// MarketCategory Provider market category.
		MarketCategory string `json:"market_category"`

		// Name Trader display name, when known.
		Name string `json:"name"`

		// Outcome Provider outcome label for the traded side.
		Outcome string `json:"outcome"`

		// Platform Always polymarket, or null when the row carries no stored value.
		Platform ReportPayloadTopWhaleTradesPlatform `json:"platform"`

		// Price Trade price in provider [0, 1] units.
		Price float32 `json:"price"`

		// Pseudonym Trader pseudonym, when no display name is known.
		Pseudonym string `json:"pseudonym"`

		// Side Trade direction (BUY or SELL), not the outcome side.
		Side string `json:"side"`

		// Size Trade size in USD.
		Size float32 `json:"size"`

		// Title Market title.
		Title string `json:"title"`

		// TokenId The Polymarket CLOB token id (ERC1155 asset id, decimal string) for the traded outcome; null when unavailable (e.g. unsynced markets).
		TokenId string `json:"token_id"`

		// TradeTime Trade timestamp (UTC).
		TradeTime time.Time `json:"trade_time"`

		// TraderGrade Trader grade (S-F) at snapshot time.
		TraderGrade string `json:"trader_grade"`
	} `json:"top_whale_trades"`

	// TotalLargeTradeVolume Canonical key since #16304; total_whale_volume is its deprecated spelling, emitted beside it with the same value.
	TotalLargeTradeVolume float32 `json:"total_large_trade_volume"`

	// TotalLargeTrades Canonical key since #16304; total_whale_trades is its deprecated spelling, emitted beside it with the same value.
	TotalLargeTrades int     `json:"total_large_trades"`
	TotalWhaleTrades int     `json:"total_whale_trades"`
	TotalWhaleVolume float32 `json:"total_whale_volume"`
}

ReportPayload defines model for ReportPayload.

type ReportPayloadTopLargeTradesPlatform added in v0.4.0

type ReportPayloadTopLargeTradesPlatform string

ReportPayloadTopLargeTradesPlatform Always polymarket, or null when the row carries no stored value.

const (
	ReportPayloadTopLargeTradesPlatformPolymarket ReportPayloadTopLargeTradesPlatform = "polymarket"
)

Defines values for ReportPayloadTopLargeTradesPlatform.

func (ReportPayloadTopLargeTradesPlatform) Valid added in v0.4.0

Valid indicates whether the value is a known member of the ReportPayloadTopLargeTradesPlatform enum.

type ReportPayloadTopWhaleTradesPlatform added in v0.4.0

type ReportPayloadTopWhaleTradesPlatform string

ReportPayloadTopWhaleTradesPlatform Always polymarket, or null when the row carries no stored value.

const (
	ReportPayloadTopWhaleTradesPlatformPolymarket ReportPayloadTopWhaleTradesPlatform = "polymarket"
)

Defines values for ReportPayloadTopWhaleTradesPlatform.

func (ReportPayloadTopWhaleTradesPlatform) Valid added in v0.4.0

Valid indicates whether the value is a known member of the ReportPayloadTopWhaleTradesPlatform enum.

type ReportReconciliation

type ReportReconciliation struct {
	Notes      string                         `json:"notes"`
	VolumeKind ReportReconciliationVolumeKind `json:"volume_kind"`

	// WhaleVolumeSource Where the whale volume in this report is read from: the column name `whale_alerts.usdc_notional_num`, followed in parentheses by the reconciliation note the server attaches to it. The server has always sent the note with the name, so this is not a bare constant; match on the prefix, not the whole string.
	WhaleVolumeSource string `json:"whale_volume_source"`
}

ReportReconciliation defines model for ReportReconciliation.

type ReportReconciliationVolumeKind

type ReportReconciliationVolumeKind string

ReportReconciliationVolumeKind defines model for ReportReconciliation.VolumeKind.

const (
	LocalWhaleActivityVolume ReportReconciliationVolumeKind = "local_whale_activity_volume"
)

Defines values for ReportReconciliationVolumeKind.

func (ReportReconciliationVolumeKind) Valid

Valid indicates whether the value is a known member of the ReportReconciliationVolumeKind enum.

type ReportSnapshot

type ReportSnapshot struct {
	Completeness   SnapshotCompleteness `json:"completeness"`
	GeneratedAt    time.Time            `json:"generated_at"`
	Kind           ReportSnapshotKind   `json:"kind"`
	Reconciliation ReportReconciliation `json:"reconciliation"`
	Report         ReportPayload        `json:"report"`
	Snapshot       SnapshotState        `json:"snapshot"`
	SourceRange    ReportSourceRange    `json:"source_range"`
}

ReportSnapshot defines model for ReportSnapshot.

type ReportSnapshotKind

type ReportSnapshotKind string

ReportSnapshotKind defines model for ReportSnapshot.Kind.

const (
	ReportSnapshotKindDaily   ReportSnapshotKind = "daily"
	ReportSnapshotKindMonthly ReportSnapshotKind = "monthly"
	ReportSnapshotKindWeekly  ReportSnapshotKind = "weekly"
)

Defines values for ReportSnapshotKind.

func (ReportSnapshotKind) Valid

func (e ReportSnapshotKind) Valid() bool

Valid indicates whether the value is a known member of the ReportSnapshotKind enum.

type ReportSourceRange

type ReportSourceRange struct {
	EndDate   openapi_types.Date        `json:"end_date"`
	StartDate openapi_types.Date        `json:"start_date"`
	Timezone  ReportSourceRangeTimezone `json:"timezone"`
}

ReportSourceRange defines model for ReportSourceRange.

type ReportSourceRangeTimezone

type ReportSourceRangeTimezone string

ReportSourceRangeTimezone defines model for ReportSourceRange.Timezone.

const (
	UTC ReportSourceRangeTimezone = "UTC"
)

Defines values for ReportSourceRangeTimezone.

func (ReportSourceRangeTimezone) Valid

func (e ReportSourceRangeTimezone) Valid() bool

Valid indicates whether the value is a known member of the ReportSourceRangeTimezone enum.

type RequestEditorFn

type RequestEditorFn func(ctx context.Context, req *http.Request) error

RequestEditorFn is the function signature for the RequestEditor callback function

type RequestTimeoutError added in v0.3.0

type RequestTimeoutError struct {
	Deadline time.Duration
	Method   string
	URL      string
	Err      error
}

RequestTimeoutError reports that a request passed the client's deadline for it. Deadline is the bound that expired, Method and URL name the request (scheme, host and path; no query, no credential), and Err is the underlying error, so errors.Is(err, context.DeadlineExceeded) holds and errors.As finds the *url.Error. A context the caller cancelled or gave its own deadline is reported as it is, never as this error, so a client deadline stays distinguishable from a caller's cancellation and from an HTTP status.

func (*RequestTimeoutError) Error added in v0.3.0

func (e *RequestTimeoutError) Error() string

func (*RequestTimeoutError) Timeout added in v0.3.0

func (e *RequestTimeoutError) Timeout() bool

Timeout reports that this error is a timeout, matching the net.Error convention.

func (*RequestTimeoutError) Unwrap added in v0.3.0

func (e *RequestTimeoutError) Unwrap() error

Unwrap exposes the transport error, so errors.Is(err, context.DeadlineExceeded) holds.

type ResponseMeta

type ResponseMeta struct {
	// CacheAgeS Cache age in seconds. Omitted when the response was not cached, and also when it was cached but its age cannot be established (an entry stored before its cache carried a computed instant). Never a placeholder: an unknown age is reported as no value rather than as the cache TTL.
	CacheAgeS *int `json:"cache_age_s,omitempty"`
	Cached    bool `json:"cached"`

	// CategorySkillBasePayloadHash SHA-256 of the funded signal membership/order/rank/cursor vector immediately before category-skill enrichment. Sports-edge-signals only.
	CategorySkillBasePayloadHash *string `json:"category_skill_base_payload_hash,omitempty"`

	// CategorySkillEnrichedBasePayloadHash Independent SHA-256 recomputation over the same base fields immediately after category-skill enrichment. Equality with category_skill_base_payload_hash proves shadow enrichment did not change funded inputs. Sports-edge-signals only.
	CategorySkillEnrichedBasePayloadHash *string `json:"category_skill_enriched_base_payload_hash,omitempty"`

	// CategorySkillModelOperationallyDegraded Whole-model operational readiness captured with the category model snapshot. Present on category-enriched responses even when the filtered signal list is empty. When true, category_skill_source is degraded and sports-edge-signals uses the shorter degraded cache TTL.
	CategorySkillModelOperationallyDegraded *bool                              `json:"category_skill_model_operationally_degraded,omitempty"`
	CategorySkillModelVersion               *string                            `json:"category_skill_model_version,omitempty"`
	CategorySkillObservationStartedAt       *time.Time                         `json:"category_skill_observation_started_at,omitempty"`
	CategorySkillPlatform                   *ResponseMetaCategorySkillPlatform `json:"category_skill_platform,omitempty"`
	CategorySkillScope                      *ResponseMetaCategorySkillScope    `json:"category_skill_scope,omitempty"`

	// CategorySkillSource Whole filtered snapshot category-evidence status before pagination. Operational live always remains partial source coverage.
	CategorySkillSource         *ResponseMetaCategorySkillSource         `json:"category_skill_source,omitempty"`
	CategorySkillSourceCoverage *ResponseMetaCategorySkillSourceCoverage `json:"category_skill_source_coverage,omitempty"`
	CategorySkillStatusCounts   *struct {
		Degraded     int `json:"degraded"`
		Insufficient int `json:"insufficient"`
		Live         int `json:"live"`
		Stale        int `json:"stale"`
		Unknown      int `json:"unknown"`
	} `json:"category_skill_status_counts,omitempty"`
	CategorySkillTaxonomyVersion *string `json:"category_skill_taxonomy_version,omitempty"`

	// Cost Advisory request weight (relative compute cost). 1 for simple reads; higher for heavier endpoints. Not a credit/price.
	Cost int `json:"cost"`

	// DirectionalSource Which path produced the team-directional read on this response. Only present on endpoints that compute one (today: GET /api/v1/sports-edge-signals). "live" means the read RAN. "degraded" means it FAILED, so nothing was measured and the ranking fell back to raw conviction. The flag describes the READ, not its consequence: a read that ran and found nothing groupable also leaves the directional fields null, and that is honestly "live" -- the per-signal nulls already say "nothing to enrich here", so this snapshot-level flag carries only what they cannot, namely whether the read ran at all. A degraded response is cached on the shorter degraded TTL so it self-heals. Reported SEPARATELY from ranking_source because the two degradations are independent -- a sharp-money DB miss weakens the ranking DATA, a directional failure removes a ranking WEIGHT -- and a consumer down-weighting a degraded response needs to know which input it lost. Omitted on endpoints that compute no directional read.
	DirectionalSource *ResponseMetaDirectionalSource `json:"directional_source,omitempty"`

	// RankingAsOf Authoritative RFC3339 timestamp from cache_generations.updated_at for ranking_generation. It is read in the same repeatable-read snapshot as the leaderboard rows and is not request time, cache write time, or row insertion order.
	RankingAsOf *time.Time `json:"ranking_as_of,omitempty"`

	// RankingGeneration Committed PostgreSQL-owned leaderboard generation for the returned rows and cursor. Present on GET /api/v1/leaderboard; omitted on endpoints that do not read this ranking.
	RankingGeneration *int `json:"ranking_generation,omitempty"`

	// RankingSource Which ranking-data path produced this response. Only present on endpoints that can degrade a ranking (today: GET /api/v1/sports-edge-signals). "live" is the normal path (the current holder pile from the provider batch); "db_only" is the degraded fallback (a truthful but weaker trader_markets ranking) served when the live sharp-money ranking batch is unavailable (a sharp-money DB read failure, not a Polymarket outage) and cached on a shorter TTL, so a consumer can down-weight or skip it. Omitted on endpoints that never degrade.
	RankingSource *ResponseMetaRankingSource `json:"ranking_source,omitempty"`

	// RequestId Unique request ID (req_ prefix). The same value as the X-Request-Id response header, the request's usage accounting row and its log lines.
	RequestId string `json:"request_id"`
}

ResponseMeta defines model for ResponseMeta.

type ResponseMetaCategorySkillPlatform

type ResponseMetaCategorySkillPlatform string

ResponseMetaCategorySkillPlatform defines model for ResponseMeta.CategorySkillPlatform.

const (
	ResponseMetaCategorySkillPlatformPolymarket ResponseMetaCategorySkillPlatform = "polymarket"
)

Defines values for ResponseMetaCategorySkillPlatform.

func (ResponseMetaCategorySkillPlatform) Valid

Valid indicates whether the value is a known member of the ResponseMetaCategorySkillPlatform enum.

type ResponseMetaCategorySkillScope

type ResponseMetaCategorySkillScope string

ResponseMetaCategorySkillScope defines model for ResponseMeta.CategorySkillScope.

const (
	ResponseMetaCategorySkillScopeObservedGoldskyPrimaryTakerFill ResponseMetaCategorySkillScope = "observed_goldsky_primary_taker_fill"
)

Defines values for ResponseMetaCategorySkillScope.

func (ResponseMetaCategorySkillScope) Valid

Valid indicates whether the value is a known member of the ResponseMetaCategorySkillScope enum.

type ResponseMetaCategorySkillSource

type ResponseMetaCategorySkillSource string

ResponseMetaCategorySkillSource Whole filtered snapshot category-evidence status before pagination. Operational live always remains partial source coverage.

const (
	ResponseMetaCategorySkillSourceDegraded    ResponseMetaCategorySkillSource = "degraded"
	ResponseMetaCategorySkillSourceLive        ResponseMetaCategorySkillSource = "live"
	ResponseMetaCategorySkillSourcePartial     ResponseMetaCategorySkillSource = "partial"
	ResponseMetaCategorySkillSourceUnavailable ResponseMetaCategorySkillSource = "unavailable"
)

Defines values for ResponseMetaCategorySkillSource.

func (ResponseMetaCategorySkillSource) Valid

Valid indicates whether the value is a known member of the ResponseMetaCategorySkillSource enum.

type ResponseMetaCategorySkillSourceCoverage

type ResponseMetaCategorySkillSourceCoverage string

ResponseMetaCategorySkillSourceCoverage defines model for ResponseMeta.CategorySkillSourceCoverage.

const (
	ResponseMetaCategorySkillSourceCoverageGradedWalletFills          ResponseMetaCategorySkillSourceCoverage = "graded_wallet_fills"
	ResponseMetaCategorySkillSourceCoveragePartialWhaleThresholdFills ResponseMetaCategorySkillSourceCoverage = "partial_whale_threshold_fills"
)

Defines values for ResponseMetaCategorySkillSourceCoverage.

func (ResponseMetaCategorySkillSourceCoverage) Valid

Valid indicates whether the value is a known member of the ResponseMetaCategorySkillSourceCoverage enum.

type ResponseMetaDirectionalSource

type ResponseMetaDirectionalSource string

ResponseMetaDirectionalSource Which path produced the team-directional read on this response. Only present on endpoints that compute one (today: GET /api/v1/sports-edge-signals). "live" means the read RAN. "degraded" means it FAILED, so nothing was measured and the ranking fell back to raw conviction. The flag describes the READ, not its consequence: a read that ran and found nothing groupable also leaves the directional fields null, and that is honestly "live" -- the per-signal nulls already say "nothing to enrich here", so this snapshot-level flag carries only what they cannot, namely whether the read ran at all. A degraded response is cached on the shorter degraded TTL so it self-heals. Reported SEPARATELY from ranking_source because the two degradations are independent -- a sharp-money DB miss weakens the ranking DATA, a directional failure removes a ranking WEIGHT -- and a consumer down-weighting a degraded response needs to know which input it lost. Omitted on endpoints that compute no directional read.

const (
	ResponseMetaDirectionalSourceDegraded ResponseMetaDirectionalSource = "degraded"
	ResponseMetaDirectionalSourceLive     ResponseMetaDirectionalSource = "live"
)

Defines values for ResponseMetaDirectionalSource.

func (ResponseMetaDirectionalSource) Valid

Valid indicates whether the value is a known member of the ResponseMetaDirectionalSource enum.

type ResponseMetaRankingSource

type ResponseMetaRankingSource string

ResponseMetaRankingSource Which ranking-data path produced this response. Only present on endpoints that can degrade a ranking (today: GET /api/v1/sports-edge-signals). "live" is the normal path (the current holder pile from the provider batch); "db_only" is the degraded fallback (a truthful but weaker trader_markets ranking) served when the live sharp-money ranking batch is unavailable (a sharp-money DB read failure, not a Polymarket outage) and cached on a shorter TTL, so a consumer can down-weight or skip it. Omitted on endpoints that never degrade.

const (
	ResponseMetaRankingSourceDbOnly ResponseMetaRankingSource = "db_only"
	ResponseMetaRankingSourceLive   ResponseMetaRankingSource = "live"
)

Defines values for ResponseMetaRankingSource.

func (ResponseMetaRankingSource) Valid

func (e ResponseMetaRankingSource) Valid() bool

Valid indicates whether the value is a known member of the ResponseMetaRankingSource enum.

type RetireWebhookSecret200JSONResponseBodyObject added in v0.3.0

type RetireWebhookSecret200JSONResponseBodyObject string

RetireWebhookSecret200JSONResponseBodyObject defines parameters for RetireWebhookSecret.

const (
	RetireWebhookSecret200JSONResponseBodyObjectWebhook RetireWebhookSecret200JSONResponseBodyObject = "webhook"
)

Defines values for RetireWebhookSecret200JSONResponseBodyObject.

func (RetireWebhookSecret200JSONResponseBodyObject) Valid added in v0.3.0

Valid indicates whether the value is a known member of the RetireWebhookSecret200JSONResponseBodyObject enum.

type RetireWebhookSecretParams added in v0.3.0

type RetireWebhookSecretParams struct {
	// IdempotencyKey Optional safe-retry key. Reuse the same value only when retrying the exact same mutation request body; a different body returns 422 and an in-flight matching request returns 409.
	IdempotencyKey *string `json:"Idempotency-Key,omitempty"`
}

RetireWebhookSecretParams defines parameters for RetireWebhookSecret.

type RetireWebhookSecretResponse added in v0.3.0

type RetireWebhookSecretResponse struct {
	Body         []byte
	HTTPResponse *http.Response
	// JSON200 the response for an HTTP 200 `application/json` response
	JSON200 *struct {
		Data   WebhookEndpoint                              `json:"data"`
		Meta   ResponseMeta                                 `json:"meta"`
		Object RetireWebhookSecret200JSONResponseBodyObject `json:"object"`
	}
	// JSON400 the response for an HTTP 400 `application/json` response
	JSON400 *ApiError
	// JSON401 the response for an HTTP 401 `application/json` response
	JSON401 *ApiError
	// JSON402 the response for an HTTP 402 `application/json` response
	JSON402 *ApiError
	// JSON403 the response for an HTTP 403 `application/json` response
	JSON403 *ApiError
	// JSON404 the response for an HTTP 404 `application/json` response
	JSON404 *ApiError
	// JSON408 the response for an HTTP 408 `application/json` response
	JSON408 *ApiError
	// JSON409 the response for an HTTP 409 `application/json` response
	JSON409 *ApiError
	// JSON422 the response for an HTTP 422 `application/json` response
	JSON422 *ApiError
	// JSON423 the response for an HTTP 423 `application/json` response
	JSON423 *ApiError
	// JSON429 the response for an HTTP 429 `application/json` response
	JSON429 *ApiError
	// JSON500 the response for an HTTP 500 `application/json` response
	JSON500 *ApiError
	// JSON503 the response for an HTTP 503 `application/json` response
	JSON503 *ApiError
}

func ParseRetireWebhookSecretResponse added in v0.3.0

func ParseRetireWebhookSecretResponse(rsp *http.Response) (*RetireWebhookSecretResponse, error)

ParseRetireWebhookSecretResponse parses an HTTP response from a RetireWebhookSecretWithResponse call

func (RetireWebhookSecretResponse) ContentType added in v0.3.0

func (r RetireWebhookSecretResponse) ContentType() string

ContentType is a convenience method to retrieve the Content-Type value from the HTTP response headers

func (RetireWebhookSecretResponse) GetBody added in v0.3.0

func (r RetireWebhookSecretResponse) GetBody() []byte

GetBody returns the raw response body bytes

func (RetireWebhookSecretResponse) GetJSON200 added in v0.3.0

func (r RetireWebhookSecretResponse) GetJSON200() *struct {
	Data   WebhookEndpoint                              `json:"data"`
	Meta   ResponseMeta                                 `json:"meta"`
	Object RetireWebhookSecret200JSONResponseBodyObject `json:"object"`
}

GetJSON200 returns the response for an HTTP 200 `application/json` response

func (RetireWebhookSecretResponse) GetJSON400 added in v0.3.0

func (r RetireWebhookSecretResponse) GetJSON400() *ApiError

GetJSON400 returns the response for an HTTP 400 `application/json` response

func (RetireWebhookSecretResponse) GetJSON401 added in v0.3.0

func (r RetireWebhookSecretResponse) GetJSON401() *ApiError

GetJSON401 returns the response for an HTTP 401 `application/json` response

func (RetireWebhookSecretResponse) GetJSON402 added in v0.3.0

func (r RetireWebhookSecretResponse) GetJSON402() *ApiError

GetJSON402 returns the response for an HTTP 402 `application/json` response

func (RetireWebhookSecretResponse) GetJSON403 added in v0.3.0

func (r RetireWebhookSecretResponse) GetJSON403() *ApiError

GetJSON403 returns the response for an HTTP 403 `application/json` response

func (RetireWebhookSecretResponse) GetJSON404 added in v0.3.0

func (r RetireWebhookSecretResponse) GetJSON404() *ApiError

GetJSON404 returns the response for an HTTP 404 `application/json` response

func (RetireWebhookSecretResponse) GetJSON408 added in v0.3.0

func (r RetireWebhookSecretResponse) GetJSON408() *ApiError

GetJSON408 returns the response for an HTTP 408 `application/json` response

func (RetireWebhookSecretResponse) GetJSON409 added in v0.3.0

func (r RetireWebhookSecretResponse) GetJSON409() *ApiError

GetJSON409 returns the response for an HTTP 409 `application/json` response

func (RetireWebhookSecretResponse) GetJSON422 added in v0.3.0

func (r RetireWebhookSecretResponse) GetJSON422() *ApiError

GetJSON422 returns the response for an HTTP 422 `application/json` response

func (RetireWebhookSecretResponse) GetJSON423 added in v0.3.0

func (r RetireWebhookSecretResponse) GetJSON423() *ApiError

GetJSON423 returns the response for an HTTP 423 `application/json` response

func (RetireWebhookSecretResponse) GetJSON429 added in v0.3.0

func (r RetireWebhookSecretResponse) GetJSON429() *ApiError

GetJSON429 returns the response for an HTTP 429 `application/json` response

func (RetireWebhookSecretResponse) GetJSON500 added in v0.3.0

func (r RetireWebhookSecretResponse) GetJSON500() *ApiError

GetJSON500 returns the response for an HTTP 500 `application/json` response

func (RetireWebhookSecretResponse) GetJSON503 added in v0.3.0

func (r RetireWebhookSecretResponse) GetJSON503() *ApiError

GetJSON503 returns the response for an HTTP 503 `application/json` response

func (RetireWebhookSecretResponse) Status added in v0.3.0

Status returns HTTPResponse.Status

func (RetireWebhookSecretResponse) StatusCode added in v0.3.0

func (r RetireWebhookSecretResponse) StatusCode() int

StatusCode returns HTTPResponse.StatusCode

type RotateWebhookSecret200JSONResponseBodyObject

type RotateWebhookSecret200JSONResponseBodyObject string

RotateWebhookSecret200JSONResponseBodyObject defines parameters for RotateWebhookSecret.

const (
	RotateWebhookSecret200JSONResponseBodyObjectWebhook RotateWebhookSecret200JSONResponseBodyObject = "webhook"
)

Defines values for RotateWebhookSecret200JSONResponseBodyObject.

func (RotateWebhookSecret200JSONResponseBodyObject) Valid

Valid indicates whether the value is a known member of the RotateWebhookSecret200JSONResponseBodyObject enum.

type RotateWebhookSecretParams

type RotateWebhookSecretParams struct {
	// XQueryValidation Opt into strict query-name validation. The default is compatible: unknown names are ignored and reported in X-Query-Ignored. With strict, an unknown name returns 400 bad_request with error.reason unknown_query_parameter before the handler runs, including when its percent escape is incomplete.
	XQueryValidation *RotateWebhookSecretParamsXQueryValidation `json:"X-Query-Validation,omitempty"`

	// IdempotencyKey Optional safe-retry key. Reuse the same value only when retrying the exact same mutation request body; a different body returns 422 and an in-flight matching request returns 409.
	IdempotencyKey *string `json:"Idempotency-Key,omitempty"`
}

RotateWebhookSecretParams defines parameters for RotateWebhookSecret.

type RotateWebhookSecretParamsXQueryValidation added in v0.3.0

type RotateWebhookSecretParamsXQueryValidation string

RotateWebhookSecretParamsXQueryValidation defines parameters for RotateWebhookSecret.

const (
	RotateWebhookSecretParamsXQueryValidationStrict RotateWebhookSecretParamsXQueryValidation = "strict"
)

Defines values for RotateWebhookSecretParamsXQueryValidation.

func (RotateWebhookSecretParamsXQueryValidation) Valid added in v0.3.0

Valid indicates whether the value is a known member of the RotateWebhookSecretParamsXQueryValidation enum.

type RotateWebhookSecretResponse

type RotateWebhookSecretResponse struct {
	Body         []byte
	HTTPResponse *http.Response
	// JSON200 the response for an HTTP 200 `application/json` response
	JSON200 *struct {
		Data   WebhookEndpoint                              `json:"data"`
		Meta   ResponseMeta                                 `json:"meta"`
		Object RotateWebhookSecret200JSONResponseBodyObject `json:"object"`
	}
	// JSON400 the response for an HTTP 400 `application/json` response
	JSON400 *ApiError
	// JSON401 the response for an HTTP 401 `application/json` response
	JSON401 *ApiError
	// JSON402 the response for an HTTP 402 `application/json` response
	JSON402 *ApiError
	// JSON403 the response for an HTTP 403 `application/json` response
	JSON403 *ApiError
	// JSON404 the response for an HTTP 404 `application/json` response
	JSON404 *ApiError
	// JSON408 the response for an HTTP 408 `application/json` response
	JSON408 *ApiError
	// JSON409 the response for an HTTP 409 `application/json` response
	JSON409 *ApiError
	// JSON422 the response for an HTTP 422 `application/json` response
	JSON422 *ApiError
	// JSON423 the response for an HTTP 423 `application/json` response
	JSON423 *ApiError
	// JSON429 the response for an HTTP 429 `application/json` response
	JSON429 *ApiError
	// JSON500 the response for an HTTP 500 `application/json` response
	JSON500 *ApiError
	// JSON503 the response for an HTTP 503 `application/json` response
	JSON503 *ApiError
	// Headers200 the parsed response headers for an HTTP 200 response
	Headers200 *RotateWebhookSecretResponse200Headers
	// Headers429 the parsed response headers for an HTTP 429 response
	Headers429 *RotateWebhookSecretResponse429Headers
	// Headers503 the parsed response headers for an HTTP 503 response
	Headers503 *RotateWebhookSecretResponse503Headers
}

func ParseRotateWebhookSecretResponse

func ParseRotateWebhookSecretResponse(rsp *http.Response) (*RotateWebhookSecretResponse, error)

ParseRotateWebhookSecretResponse parses an HTTP response from a RotateWebhookSecretWithResponse call

func (RotateWebhookSecretResponse) ContentType

func (r RotateWebhookSecretResponse) ContentType() string

ContentType is a convenience method to retrieve the Content-Type value from the HTTP response headers

func (RotateWebhookSecretResponse) GetBody

func (r RotateWebhookSecretResponse) GetBody() []byte

GetBody returns the raw response body bytes

func (RotateWebhookSecretResponse) GetJSON200

func (r RotateWebhookSecretResponse) GetJSON200() *struct {
	Data   WebhookEndpoint                              `json:"data"`
	Meta   ResponseMeta                                 `json:"meta"`
	Object RotateWebhookSecret200JSONResponseBodyObject `json:"object"`
}

GetJSON200 returns the response for an HTTP 200 `application/json` response

func (RotateWebhookSecretResponse) GetJSON400

func (r RotateWebhookSecretResponse) GetJSON400() *ApiError

GetJSON400 returns the response for an HTTP 400 `application/json` response

func (RotateWebhookSecretResponse) GetJSON401

func (r RotateWebhookSecretResponse) GetJSON401() *ApiError

GetJSON401 returns the response for an HTTP 401 `application/json` response

func (RotateWebhookSecretResponse) GetJSON402

func (r RotateWebhookSecretResponse) GetJSON402() *ApiError

GetJSON402 returns the response for an HTTP 402 `application/json` response

func (RotateWebhookSecretResponse) GetJSON403

func (r RotateWebhookSecretResponse) GetJSON403() *ApiError

GetJSON403 returns the response for an HTTP 403 `application/json` response

func (RotateWebhookSecretResponse) GetJSON404

func (r RotateWebhookSecretResponse) GetJSON404() *ApiError

GetJSON404 returns the response for an HTTP 404 `application/json` response

func (RotateWebhookSecretResponse) GetJSON408 added in v0.2.0

func (r RotateWebhookSecretResponse) GetJSON408() *ApiError

GetJSON408 returns the response for an HTTP 408 `application/json` response

func (RotateWebhookSecretResponse) GetJSON409

func (r RotateWebhookSecretResponse) GetJSON409() *ApiError

GetJSON409 returns the response for an HTTP 409 `application/json` response

func (RotateWebhookSecretResponse) GetJSON422

func (r RotateWebhookSecretResponse) GetJSON422() *ApiError

GetJSON422 returns the response for an HTTP 422 `application/json` response

func (RotateWebhookSecretResponse) GetJSON423

func (r RotateWebhookSecretResponse) GetJSON423() *ApiError

GetJSON423 returns the response for an HTTP 423 `application/json` response

func (RotateWebhookSecretResponse) GetJSON429

func (r RotateWebhookSecretResponse) GetJSON429() *ApiError

GetJSON429 returns the response for an HTTP 429 `application/json` response

func (RotateWebhookSecretResponse) GetJSON500

func (r RotateWebhookSecretResponse) GetJSON500() *ApiError

GetJSON500 returns the response for an HTTP 500 `application/json` response

func (RotateWebhookSecretResponse) GetJSON503

func (r RotateWebhookSecretResponse) GetJSON503() *ApiError

GetJSON503 returns the response for an HTTP 503 `application/json` response

func (RotateWebhookSecretResponse) Status

Status returns HTTPResponse.Status

func (RotateWebhookSecretResponse) StatusCode

func (r RotateWebhookSecretResponse) StatusCode() int

StatusCode returns HTTPResponse.StatusCode

type RotateWebhookSecretResponse200Headers

type RotateWebhookSecretResponse200Headers struct {
	RateLimitLimit      *int
	RateLimitRemaining  *int
	RateLimitReset      *int
	ServerTiming        *string
	XEffectiveQuery     *string
	XQueryIgnored       *string
	XRateLimitLimit     *int
	XRateLimitRemaining *int
	XRateLimitReset     *int
	XRequestId          *string
	XUsageAccounting    *string
}

RotateWebhookSecretResponse200Headers the declared response headers of an HTTP 200 response for RotateWebhookSecret

type RotateWebhookSecretResponse429Headers

type RotateWebhookSecretResponse429Headers struct {
	RateLimitLimit      *int
	RateLimitRemaining  *int
	RateLimitReset      *int
	RetryAfter          *int
	XRateLimitLimit     *int
	XRateLimitRemaining *int
	XRateLimitReset     *int
	XRequestId          *string
}

RotateWebhookSecretResponse429Headers the declared response headers of an HTTP 429 response for RotateWebhookSecret

type RotateWebhookSecretResponse503Headers

type RotateWebhookSecretResponse503Headers struct {
	RetryAfter *int
	XRequestId *string
}

RotateWebhookSecretResponse503Headers the declared response headers of an HTTP 503 response for RotateWebhookSecret

type ScheduledPickSlot

type ScheduledPickSlot struct {
	// Kickoff The backed game's current kickoff instant.
	Kickoff time.Time `json:"kickoff"`

	// PickRank Stable 1-based slot within the product day's ranked picks. The slot keeps this rank when it releases.
	PickRank int `json:"pick_rank"`

	// ReleaseAt The slot's scheduled release instant, normally the current provider kickoff minus one hour. The actual publish can trail it by bounded worker delay.
	ReleaseAt time.Time `json:"release_at"`
}

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.

type ScoreCell

type ScoreCell struct {
	// Games Games won in this set.
	Games int `json:"games"`

	// Tiebreak Tiebreak points won in this set. Omitted when the set had no tiebreak; absence and zero are different.
	Tiebreak *int `json:"tiebreak,omitempty"`
}

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.

type ScoreFormat

type ScoreFormat string

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.

const (
	EsportsSeries ScoreFormat = "esports_series"
	MultiSet      ScoreFormat = "multi_set"
	TwoSide       ScoreFormat = "two_side"
)

Defines values for ScoreFormat.

func (ScoreFormat) Valid

func (e ScoreFormat) Valid() bool

Valid indicates whether the value is a known member of the ScoreFormat enum.

type SearchContent200JSONResponseBodyHasMore

type SearchContent200JSONResponseBodyHasMore bool

SearchContent200JSONResponseBodyHasMore defines parameters for SearchContent.

const (
	SearchContent200JSONResponseBodyHasMoreFalse SearchContent200JSONResponseBodyHasMore = false
)

Defines values for SearchContent200JSONResponseBodyHasMore.

func (SearchContent200JSONResponseBodyHasMore) Valid

Valid indicates whether the value is a known member of the SearchContent200JSONResponseBodyHasMore enum.

type SearchContent200JSONResponseBodyObject

type SearchContent200JSONResponseBodyObject string

SearchContent200JSONResponseBodyObject defines parameters for SearchContent.

const (
	SearchContent200JSONResponseBodyObjectList SearchContent200JSONResponseBodyObject = "list"
)

Defines values for SearchContent200JSONResponseBodyObject.

func (SearchContent200JSONResponseBodyObject) Valid

Valid indicates whether the value is a known member of the SearchContent200JSONResponseBodyObject enum.

type SearchContentParams

type SearchContentParams struct {
	// Q Search query. Must be 1-256 characters before whitespace trimming and non-empty after trimming.
	Q string `form:"q" json:"q"`

	// Limit Maximum content items to return. Out-of-range values are clamped to 1..50.
	Limit *int `form:"limit,omitempty" json:"limit,omitempty"`

	// XQueryValidation Opt into strict query-name validation. The default is compatible: unknown names are ignored and reported in X-Query-Ignored. With strict, an unknown name returns 400 bad_request with error.reason unknown_query_parameter before the handler runs, including when its percent escape is incomplete.
	XQueryValidation *SearchContentParamsXQueryValidation `json:"X-Query-Validation,omitempty"`
}

SearchContentParams defines parameters for SearchContent.

type SearchContentParamsXQueryValidation added in v0.3.0

type SearchContentParamsXQueryValidation string

SearchContentParamsXQueryValidation defines parameters for SearchContent.

const (
	SearchContentParamsXQueryValidationStrict SearchContentParamsXQueryValidation = "strict"
)

Defines values for SearchContentParamsXQueryValidation.

func (SearchContentParamsXQueryValidation) Valid added in v0.3.0

Valid indicates whether the value is a known member of the SearchContentParamsXQueryValidation enum.

type SearchContentResponse

type SearchContentResponse struct {
	Body         []byte
	HTTPResponse *http.Response
	// JSON200 the response for an HTTP 200 `application/json` response
	JSON200 *struct {
		Data    []ContentSearchResult                   `json:"data"`
		HasMore SearchContent200JSONResponseBodyHasMore `json:"has_more"`
		Meta    ResponseMeta                            `json:"meta"`

		// NextCursor Omitted because content search is a bounded one-page result.
		NextCursor *string                                `json:"next_cursor,omitempty"`
		Object     SearchContent200JSONResponseBodyObject `json:"object"`

		// Total Absent because content search is a bounded relevance result and does not run a count query.
		Total *int `json:"total,omitempty"`
	}
	// JSON400 the response for an HTTP 400 `application/json` response
	JSON400 *ApiError
	// JSON401 the response for an HTTP 401 `application/json` response
	JSON401 *ApiError
	// JSON402 the response for an HTTP 402 `application/json` response
	JSON402 *ApiError
	// JSON403 the response for an HTTP 403 `application/json` response
	JSON403 *ApiError
	// JSON408 the response for an HTTP 408 `application/json` response
	JSON408 *ApiError
	// JSON423 the response for an HTTP 423 `application/json` response
	JSON423 *ApiError
	// JSON429 the response for an HTTP 429 `application/json` response
	JSON429 *ApiError
	// JSON500 the response for an HTTP 500 `application/json` response
	JSON500 *ApiError
	// JSON503 the response for an HTTP 503 `application/json` response
	JSON503 *ApiError
	// Headers200 the parsed response headers for an HTTP 200 response
	Headers200 *SearchContentResponse200Headers
	// Headers429 the parsed response headers for an HTTP 429 response
	Headers429 *SearchContentResponse429Headers
	// Headers503 the parsed response headers for an HTTP 503 response
	Headers503 *SearchContentResponse503Headers
}

func ParseSearchContentResponse

func ParseSearchContentResponse(rsp *http.Response) (*SearchContentResponse, error)

ParseSearchContentResponse parses an HTTP response from a SearchContentWithResponse call

func (SearchContentResponse) ContentType

func (r SearchContentResponse) ContentType() string

ContentType is a convenience method to retrieve the Content-Type value from the HTTP response headers

func (SearchContentResponse) GetBody

func (r SearchContentResponse) GetBody() []byte

GetBody returns the raw response body bytes

func (SearchContentResponse) GetJSON200

func (r SearchContentResponse) GetJSON200() *struct {
	Data    []ContentSearchResult                   `json:"data"`
	HasMore SearchContent200JSONResponseBodyHasMore `json:"has_more"`
	Meta    ResponseMeta                            `json:"meta"`

	// NextCursor Omitted because content search is a bounded one-page result.
	NextCursor *string                                `json:"next_cursor,omitempty"`
	Object     SearchContent200JSONResponseBodyObject `json:"object"`

	// Total Absent because content search is a bounded relevance result and does not run a count query.
	Total *int `json:"total,omitempty"`
}

GetJSON200 returns the response for an HTTP 200 `application/json` response

func (SearchContentResponse) GetJSON400

func (r SearchContentResponse) GetJSON400() *ApiError

GetJSON400 returns the response for an HTTP 400 `application/json` response

func (SearchContentResponse) GetJSON401

func (r SearchContentResponse) GetJSON401() *ApiError

GetJSON401 returns the response for an HTTP 401 `application/json` response

func (SearchContentResponse) GetJSON402

func (r SearchContentResponse) GetJSON402() *ApiError

GetJSON402 returns the response for an HTTP 402 `application/json` response

func (SearchContentResponse) GetJSON403

func (r SearchContentResponse) GetJSON403() *ApiError

GetJSON403 returns the response for an HTTP 403 `application/json` response

func (SearchContentResponse) GetJSON408 added in v0.2.0

func (r SearchContentResponse) GetJSON408() *ApiError

GetJSON408 returns the response for an HTTP 408 `application/json` response

func (SearchContentResponse) GetJSON423

func (r SearchContentResponse) GetJSON423() *ApiError

GetJSON423 returns the response for an HTTP 423 `application/json` response

func (SearchContentResponse) GetJSON429

func (r SearchContentResponse) GetJSON429() *ApiError

GetJSON429 returns the response for an HTTP 429 `application/json` response

func (SearchContentResponse) GetJSON500

func (r SearchContentResponse) GetJSON500() *ApiError

GetJSON500 returns the response for an HTTP 500 `application/json` response

func (SearchContentResponse) GetJSON503

func (r SearchContentResponse) GetJSON503() *ApiError

GetJSON503 returns the response for an HTTP 503 `application/json` response

func (SearchContentResponse) Status

func (r SearchContentResponse) Status() string

Status returns HTTPResponse.Status

func (SearchContentResponse) StatusCode

func (r SearchContentResponse) StatusCode() int

StatusCode returns HTTPResponse.StatusCode

type SearchContentResponse200Headers

type SearchContentResponse200Headers struct {
	RateLimitLimit      *int
	RateLimitRemaining  *int
	RateLimitReset      *int
	ServerTiming        *string
	XEffectiveQuery     *string
	XQueryIgnored       *string
	XRateLimitLimit     *int
	XRateLimitRemaining *int
	XRateLimitReset     *int
	XRequestId          *string
	XUsageAccounting    *string
}

SearchContentResponse200Headers the declared response headers of an HTTP 200 response for SearchContent

type SearchContentResponse429Headers

type SearchContentResponse429Headers struct {
	RateLimitLimit      *int
	RateLimitRemaining  *int
	RateLimitReset      *int
	RetryAfter          *int
	XRateLimitLimit     *int
	XRateLimitRemaining *int
	XRateLimitReset     *int
	XRequestId          *string
}

SearchContentResponse429Headers the declared response headers of an HTTP 429 response for SearchContent

type SearchContentResponse503Headers

type SearchContentResponse503Headers struct {
	RetryAfter *int
	XRequestId *string
}

SearchContentResponse503Headers the declared response headers of an HTTP 503 response for SearchContent

type SearchMarkets200JSONResponseBodyObject

type SearchMarkets200JSONResponseBodyObject string

SearchMarkets200JSONResponseBodyObject defines parameters for SearchMarkets.

const (
	SearchMarkets200JSONResponseBodyObjectList SearchMarkets200JSONResponseBodyObject = "list"
)

Defines values for SearchMarkets200JSONResponseBodyObject.

func (SearchMarkets200JSONResponseBodyObject) Valid

Valid indicates whether the value is a known member of the SearchMarkets200JSONResponseBodyObject enum.

type SearchMarketsParams

type SearchMarketsParams struct {
	// Q Search query. Must be 1-512 characters before whitespace trimming and non-empty after trimming.
	Q string `form:"q" json:"q"`

	// Limit Maximum number of matching markets to return. Out-of-range values are clamped to 1..100.
	Limit *int `form:"limit,omitempty" json:"limit,omitempty"`

	// Cursor Pagination cursor from previous response's next_cursor.
	Cursor *string `form:"cursor,omitempty" json:"cursor,omitempty"`

	// Status Filter by market status. A market is closed once Polymarket has closed trading or it has resolved, and active otherwise; all returns both.
	Status *SearchMarketsParamsStatus `form:"status,omitempty" json:"status,omitempty"`

	// Category Filter by category.
	Category *string `form:"category,omitempty" json:"category,omitempty"`

	// XQueryValidation Opt into strict query-name validation. The default is compatible: unknown names are ignored and reported in X-Query-Ignored. With strict, an unknown name returns 400 bad_request with error.reason unknown_query_parameter before the handler runs, including when its percent escape is incomplete.
	XQueryValidation *SearchMarketsParamsXQueryValidation `json:"X-Query-Validation,omitempty"`
}

SearchMarketsParams defines parameters for SearchMarkets.

type SearchMarketsParamsStatus

type SearchMarketsParamsStatus string

SearchMarketsParamsStatus defines parameters for SearchMarkets.

const (
	SearchMarketsParamsStatusActive SearchMarketsParamsStatus = "active"
	SearchMarketsParamsStatusAll    SearchMarketsParamsStatus = "all"
	SearchMarketsParamsStatusClosed SearchMarketsParamsStatus = "closed"
)

Defines values for SearchMarketsParamsStatus.

func (SearchMarketsParamsStatus) Valid

func (e SearchMarketsParamsStatus) Valid() bool

Valid indicates whether the value is a known member of the SearchMarketsParamsStatus enum.

type SearchMarketsParamsXQueryValidation added in v0.3.0

type SearchMarketsParamsXQueryValidation string

SearchMarketsParamsXQueryValidation defines parameters for SearchMarkets.

const (
	SearchMarketsParamsXQueryValidationStrict SearchMarketsParamsXQueryValidation = "strict"
)

Defines values for SearchMarketsParamsXQueryValidation.

func (SearchMarketsParamsXQueryValidation) Valid added in v0.3.0

Valid indicates whether the value is a known member of the SearchMarketsParamsXQueryValidation enum.

type SearchMarketsResponse

type SearchMarketsResponse struct {
	Body         []byte
	HTTPResponse *http.Response
	// JSON200 the response for an HTTP 200 `application/json` response
	JSON200 *struct {
		Data       []MarketSearchResult                   `json:"data"`
		HasMore    bool                                   `json:"has_more"`
		Meta       ResponseMeta                           `json:"meta"`
		NextCursor *string                                `json:"next_cursor,omitempty"`
		Object     SearchMarkets200JSONResponseBodyObject `json:"object"`

		// Total Total matching rows when the read model exposes a count; the key is absent when it does not.
		Total *int `json:"total,omitempty"`
	}
	// JSON400 the response for an HTTP 400 `application/json` response
	JSON400 *ApiError
	// JSON401 the response for an HTTP 401 `application/json` response
	JSON401 *ApiError
	// JSON402 the response for an HTTP 402 `application/json` response
	JSON402 *ApiError
	// JSON403 the response for an HTTP 403 `application/json` response
	JSON403 *ApiError
	// JSON408 the response for an HTTP 408 `application/json` response
	JSON408 *ApiError
	// JSON423 the response for an HTTP 423 `application/json` response
	JSON423 *ApiError
	// JSON429 the response for an HTTP 429 `application/json` response
	JSON429 *ApiError
	// JSON500 the response for an HTTP 500 `application/json` response
	JSON500 *ApiError
	// JSON503 the response for an HTTP 503 `application/json` response
	JSON503 *ApiError
	// Headers200 the parsed response headers for an HTTP 200 response
	Headers200 *SearchMarketsResponse200Headers
	// Headers429 the parsed response headers for an HTTP 429 response
	Headers429 *SearchMarketsResponse429Headers
	// Headers503 the parsed response headers for an HTTP 503 response
	Headers503 *SearchMarketsResponse503Headers
}

func ParseSearchMarketsResponse

func ParseSearchMarketsResponse(rsp *http.Response) (*SearchMarketsResponse, error)

ParseSearchMarketsResponse parses an HTTP response from a SearchMarketsWithResponse call

func (SearchMarketsResponse) ContentType

func (r SearchMarketsResponse) ContentType() string

ContentType is a convenience method to retrieve the Content-Type value from the HTTP response headers

func (SearchMarketsResponse) GetBody

func (r SearchMarketsResponse) GetBody() []byte

GetBody returns the raw response body bytes

func (SearchMarketsResponse) GetJSON200

func (r SearchMarketsResponse) GetJSON200() *struct {
	Data       []MarketSearchResult                   `json:"data"`
	HasMore    bool                                   `json:"has_more"`
	Meta       ResponseMeta                           `json:"meta"`
	NextCursor *string                                `json:"next_cursor,omitempty"`
	Object     SearchMarkets200JSONResponseBodyObject `json:"object"`

	// Total Total matching rows when the read model exposes a count; the key is absent when it does not.
	Total *int `json:"total,omitempty"`
}

GetJSON200 returns the response for an HTTP 200 `application/json` response

func (SearchMarketsResponse) GetJSON400

func (r SearchMarketsResponse) GetJSON400() *ApiError

GetJSON400 returns the response for an HTTP 400 `application/json` response

func (SearchMarketsResponse) GetJSON401

func (r SearchMarketsResponse) GetJSON401() *ApiError

GetJSON401 returns the response for an HTTP 401 `application/json` response

func (SearchMarketsResponse) GetJSON402

func (r SearchMarketsResponse) GetJSON402() *ApiError

GetJSON402 returns the response for an HTTP 402 `application/json` response

func (SearchMarketsResponse) GetJSON403

func (r SearchMarketsResponse) GetJSON403() *ApiError

GetJSON403 returns the response for an HTTP 403 `application/json` response

func (SearchMarketsResponse) GetJSON408 added in v0.2.0

func (r SearchMarketsResponse) GetJSON408() *ApiError

GetJSON408 returns the response for an HTTP 408 `application/json` response

func (SearchMarketsResponse) GetJSON423

func (r SearchMarketsResponse) GetJSON423() *ApiError

GetJSON423 returns the response for an HTTP 423 `application/json` response

func (SearchMarketsResponse) GetJSON429

func (r SearchMarketsResponse) GetJSON429() *ApiError

GetJSON429 returns the response for an HTTP 429 `application/json` response

func (SearchMarketsResponse) GetJSON500 added in v0.4.0

func (r SearchMarketsResponse) GetJSON500() *ApiError

GetJSON500 returns the response for an HTTP 500 `application/json` response

func (SearchMarketsResponse) GetJSON503

func (r SearchMarketsResponse) GetJSON503() *ApiError

GetJSON503 returns the response for an HTTP 503 `application/json` response

func (SearchMarketsResponse) Status

func (r SearchMarketsResponse) Status() string

Status returns HTTPResponse.Status

func (SearchMarketsResponse) StatusCode

func (r SearchMarketsResponse) StatusCode() int

StatusCode returns HTTPResponse.StatusCode

type SearchMarketsResponse200Headers

type SearchMarketsResponse200Headers struct {
	RateLimitLimit      *int
	RateLimitRemaining  *int
	RateLimitReset      *int
	ServerTiming        *string
	XEffectiveQuery     *string
	XQueryIgnored       *string
	XRateLimitLimit     *int
	XRateLimitRemaining *int
	XRateLimitReset     *int
	XRequestId          *string
	XUsageAccounting    *string
}

SearchMarketsResponse200Headers the declared response headers of an HTTP 200 response for SearchMarkets

type SearchMarketsResponse429Headers

type SearchMarketsResponse429Headers struct {
	RateLimitLimit      *int
	RateLimitRemaining  *int
	RateLimitReset      *int
	RetryAfter          *int
	XRateLimitLimit     *int
	XRateLimitRemaining *int
	XRateLimitReset     *int
	XRequestId          *string
}

SearchMarketsResponse429Headers the declared response headers of an HTTP 429 response for SearchMarkets

type SearchMarketsResponse503Headers

type SearchMarketsResponse503Headers struct {
	RetryAfter *int
	XRequestId *string
}

SearchMarketsResponse503Headers the declared response headers of an HTTP 503 response for SearchMarkets

type SmartMoneyFlowMarket

type SmartMoneyFlowMarket struct {
	Market struct {
		Category    string `json:"category"`
		ConditionId string `json:"condition_id"`
		Id          string `json:"id"`

		// Platform Provider platform. Always polymarket, or null when the row carries no stored value.
		Platform SmartMoneyFlowMarketMarketPlatform `json:"platform"`
		Slug     string                             `json:"slug"`
		Title    string                             `json:"title"`
	} `json:"market"`

	// SharpMoney Sharp-money flow aggregate for the market (canonical; smart_money is a deprecated byte-identical alias).
	SharpMoney struct {
		BuyVolumeUsd float32                                 `json:"buy_volume_usd"`
		Direction    SmartMoneyFlowMarketSharpMoneyDirection `json:"direction"`

		// LargeTradeCount Canonical key since #16304 (Polymarket's noun is large trade); whale_trade_count is its deprecated spelling, emitted beside it with the same value.
		LargeTradeCount *int    `json:"large_trade_count,omitempty"`
		NetFlowUsd      float32 `json:"net_flow_usd"`
		SellVolumeUsd   float32 `json:"sell_volume_usd"`

		// TokenId The Polymarket CLOB token id (ERC1155 asset id, decimal string) for the net-flow direction outcome; null when unavailable (e.g. unsynced markets).
		TokenId         string `json:"token_id"`
		WhaleTradeCount int    `json:"whale_trade_count"`
	} `json:"sharp_money"`

	// SmartMoney Deprecated alias of sharp_money; byte-identical and retained for backward compatibility.
	// Deprecated: this property has been marked as deprecated upstream, but no `x-deprecated-reason` was set
	SmartMoney struct {
		BuyVolumeUsd float32                                 `json:"buy_volume_usd"`
		Direction    SmartMoneyFlowMarketSmartMoneyDirection `json:"direction"`

		// LargeTradeCount Canonical key since #16304 (Polymarket's noun is large trade); whale_trade_count is its deprecated spelling, emitted beside it with the same value.
		LargeTradeCount *int    `json:"large_trade_count,omitempty"`
		NetFlowUsd      float32 `json:"net_flow_usd"`
		SellVolumeUsd   float32 `json:"sell_volume_usd"`

		// TokenId The Polymarket CLOB token id (ERC1155 asset id, decimal string) for the net-flow direction outcome; null when unavailable (e.g. unsynced markets).
		TokenId         string `json:"token_id"`
		WhaleTradeCount int    `json:"whale_trade_count"`
	} `json:"smart_money"`
	Timeframe string `json:"timeframe"`
}

SmartMoneyFlowMarket defines model for SmartMoneyFlowMarket.

type SmartMoneyFlowMarketMarketPlatform added in v0.4.0

type SmartMoneyFlowMarketMarketPlatform string

SmartMoneyFlowMarketMarketPlatform Provider platform. Always polymarket, or null when the row carries no stored value.

const (
	SmartMoneyFlowMarketMarketPlatformPolymarket SmartMoneyFlowMarketMarketPlatform = "polymarket"
)

Defines values for SmartMoneyFlowMarketMarketPlatform.

func (SmartMoneyFlowMarketMarketPlatform) Valid added in v0.4.0

Valid indicates whether the value is a known member of the SmartMoneyFlowMarketMarketPlatform enum.

type SmartMoneyFlowMarketSharpMoneyDirection

type SmartMoneyFlowMarketSharpMoneyDirection string

SmartMoneyFlowMarketSharpMoneyDirection defines model for SmartMoneyFlowMarket.SharpMoney.Direction.

const (
	SmartMoneyFlowMarketSharpMoneyDirectionNO  SmartMoneyFlowMarketSharpMoneyDirection = "NO"
	SmartMoneyFlowMarketSharpMoneyDirectionYES SmartMoneyFlowMarketSharpMoneyDirection = "YES"
)

Defines values for SmartMoneyFlowMarketSharpMoneyDirection.

func (SmartMoneyFlowMarketSharpMoneyDirection) Valid

Valid indicates whether the value is a known member of the SmartMoneyFlowMarketSharpMoneyDirection enum.

type SmartMoneyFlowMarketSmartMoneyDirection

type SmartMoneyFlowMarketSmartMoneyDirection string

SmartMoneyFlowMarketSmartMoneyDirection defines model for SmartMoneyFlowMarket.SmartMoney.Direction.

const (
	SmartMoneyFlowMarketSmartMoneyDirectionNO  SmartMoneyFlowMarketSmartMoneyDirection = "NO"
	SmartMoneyFlowMarketSmartMoneyDirectionYES SmartMoneyFlowMarketSmartMoneyDirection = "YES"
)

Defines values for SmartMoneyFlowMarketSmartMoneyDirection.

func (SmartMoneyFlowMarketSmartMoneyDirection) Valid

Valid indicates whether the value is a known member of the SmartMoneyFlowMarketSmartMoneyDirection enum.

type SnapshotCompleteness

type SnapshotCompleteness struct {
	// CoveredDaysWithLargeTradeActivity Canonical key since #16304; covered_days_with_whale_activity is its deprecated spelling, emitted beside it with the same value.
	CoveredDaysWithLargeTradeActivity *int   `json:"covered_days_with_large_trade_activity,omitempty"`
	CoveredDaysWithWhaleActivity      int    `json:"covered_days_with_whale_activity"`
	ExpectedDays                      int    `json:"expected_days"`
	Reason                            string `json:"reason"`

	// Status complete only on a final body (snapshot.status final). partial for a live range and for a closed range whose body was read before final_after; reason says which. empty when the range has no whale activity.
	Status SnapshotCompletenessStatus `json:"status"`
}

SnapshotCompleteness defines model for SnapshotCompleteness.

type SnapshotCompletenessStatus

type SnapshotCompletenessStatus string

SnapshotCompletenessStatus complete only on a final body (snapshot.status final). partial for a live range and for a closed range whose body was read before final_after; reason says which. empty when the range has no whale activity.

const (
	SnapshotCompletenessStatusComplete SnapshotCompletenessStatus = "complete"
	SnapshotCompletenessStatusEmpty    SnapshotCompletenessStatus = "empty"
	SnapshotCompletenessStatusPartial  SnapshotCompletenessStatus = "partial"
)

Defines values for SnapshotCompletenessStatus.

func (SnapshotCompletenessStatus) Valid

func (e SnapshotCompletenessStatus) Valid() bool

Valid indicates whether the value is a known member of the SnapshotCompletenessStatus enum.

type SnapshotState

type SnapshotState struct {
	// FinalAfter The instant a source read must start at or after to produce a final body: the range's UTC close plus 7,530 s, the whale-trade ingestion budget (p95 block lag gate plus the projection retry budget).
	FinalAfter  time.Time `json:"final_after"`
	GeneratedAt time.Time `json:"generated_at"`

	// MutableUntil For a rolling body, the UTC date on which a final body can first be built (the date of final_after); null once final.
	MutableUntil openapi_types.Date `json:"mutable_until"`

	// PeriodClosed Whether the source range has ended on the UTC calendar. Closing is not finality: a closed range is rolling until final_after.
	PeriodClosed bool `json:"period_closed"`

	// SourceReadStartedAt When this body's source read started, the clock finality is judged on. null for a body stored before that clock was recorded.
	SourceReadStartedAt time.Time `json:"source_read_started_at"`

	// Status final only for a body whose source read started at or after final_after (the UTC close of the range plus the whale-trade ingestion budget). rolling for a live range and for a closed range still inside that budget: such a body refreshes every five minutes, is rebuilt once after final_after, and is then frozen. Before 2026-09-22 a closed range read final from the calendar alone, even for a body built before the range ended (#16225).
	Status SnapshotStateStatus `json:"status"`

	// Storage durable for canonical daily, ISO-week, and monthly snapshot identities; ephemeral for explicit weekly from/to ranges, which are recomputed within a bounded 31-day window and never persisted.
	Storage SnapshotStateStorage `json:"storage"`

	// Version Immutable content version for a durable report identity; 0 for an ephemeral explicit weekly from/to range.
	Version int64 `json:"version"`
}

SnapshotState defines model for SnapshotState.

type SnapshotStateStatus

type SnapshotStateStatus string

SnapshotStateStatus final only for a body whose source read started at or after final_after (the UTC close of the range plus the whale-trade ingestion budget). rolling for a live range and for a closed range still inside that budget: such a body refreshes every five minutes, is rebuilt once after final_after, and is then frozen. Before 2026-09-22 a closed range read final from the calendar alone, even for a body built before the range ended (#16225).

const (
	SnapshotStateStatusFinal   SnapshotStateStatus = "final"
	SnapshotStateStatusRolling SnapshotStateStatus = "rolling"
)

Defines values for SnapshotStateStatus.

func (SnapshotStateStatus) Valid

func (e SnapshotStateStatus) Valid() bool

Valid indicates whether the value is a known member of the SnapshotStateStatus enum.

type SnapshotStateStorage added in v0.3.0

type SnapshotStateStorage string

SnapshotStateStorage durable for canonical daily, ISO-week, and monthly snapshot identities; ephemeral for explicit weekly from/to ranges, which are recomputed within a bounded 31-day window and never persisted.

const (
	Durable   SnapshotStateStorage = "durable"
	Ephemeral SnapshotStateStorage = "ephemeral"
)

Defines values for SnapshotStateStorage.

func (SnapshotStateStorage) Valid added in v0.3.0

func (e SnapshotStateStorage) Valid() bool

Valid indicates whether the value is a known member of the SnapshotStateStorage enum.

type StreamFrame added in v0.2.0

type StreamFrame struct {
	// Resync is true for an "event: resync" marker. Data is then the resync
	// object ({type, completeness, from_sequence, to_sequence}); refetch
	// current state and attach live.
	Resync bool
	// Seq is the cluster-shared sequence id: the envelope's seq, else the SSE
	// id. Pass the last delivered Seq as Last-Event-ID to resume. For a resync
	// marker Seq is the SSE id, and HasSeq is false when the marker carried
	// none.
	Seq int64
	// HasSeq is true when Seq is set. It is always true for a data frame.
	HasSeq bool
	// Type is the envelope's wire type ("WhaleTradesInserted",
	// "wallet_grade_changed", ...), or "resync" for a marker.
	Type string
	// PublishedAt is the envelope's published_at when present (ISO-8601).
	PublishedAt string
	// Data is the frame's JSON payload, a JSON object. Unmarshal it into the
	// struct for Type.
	Data json.RawMessage
}

StreamFrame is one delivered frame.

type StreamHTTPError added in v0.2.0

type StreamHTTPError struct {
	StatusCode int
	Response   *GetStreamResponse
}

StreamHTTPError is the typed, bounded startup failure: the stream request was answered with a status other than 200. Response carries the decoded error body (JSON401, JSON429 and the other generated fields) and the parsed headers such as Retry-After; at most 64 KiB of the body was read.

func (*StreamHTTPError) Error added in v0.2.0

func (e *StreamHTTPError) Error() string

type StreamOption added in v0.2.0

type StreamOption func(*streamConfig)

StreamOption configures OpenStream.

func WithMaxFrameBytes added in v0.2.0

func WithMaxFrameBytes(n int) StreamOption

WithMaxFrameBytes bounds the bytes held for one undelivered frame. The default is DefaultMaxStreamFrameBytes (1 MiB). A connection that sends more than this without a blank-line delimiter ends with StreamFrameTooLarge.

func WithStreamIdleTimeout added in v0.3.0

func WithStreamIdleTimeout(timeout time.Duration) StreamOption

WithStreamIdleTimeout ends the connection when nothing arrives on it, not even a keep-alive comment, for this long. The default is DefaultStreamIdleTimeout (60 s); 0 lets an idle connection stay open indefinitely. Next then returns a *StreamTimeoutError whose Phase is StreamTimeoutIdle and whose LastSeq says where to resume.

func WithStreamRequestEditor added in v0.2.0

func WithStreamRequestEditor(fn RequestEditorFn) StreamOption

WithStreamRequestEditor adds a request editor to the stream request only, for example to set Last-Event-ID from a stored cursor when GetStreamParams is not convenient.

func WithStreamStartTimeout added in v0.3.0

func WithStreamStartTimeout(timeout time.Duration) StreamOption

WithStreamStartTimeout bounds the wait from the stream request to its response headers. The default is DefaultStreamStartTimeout (10 s); 0 leaves the opening bounded only by the transport's response-header timeout and the context. A stream that does not open in time fails with a *StreamTimeoutError whose Phase is StreamTimeoutStart.

type StreamProtocolError added in v0.2.0

type StreamProtocolError struct {
	Reason     StreamProtocolErrorReason
	LastSeq    int64
	HasLastSeq bool
	FrameID    int64
	HasFrameID bool
	Event      string
	Bytes      int
	MediaType  string
}

StreamProtocolError reports that the stream broke the SSE contract. The connection is closed before it is returned. LastSeq is the last sequence delivered on this connection (HasLastSeq false when none was): no malformed frame moves the cursor. FrameID is the SSE id of the offending frame when it carried one, Event its SSE event name, Bytes its size, and MediaType the response's Content-Type for StreamUnexpectedMediaType. The raw payload is deliberately not carried: it may hold data you would not want in a log, and FrameID plus LastSeq name the frame exactly.

func (*StreamProtocolError) Error added in v0.2.0

func (e *StreamProtocolError) Error() string

type StreamProtocolErrorReason added in v0.2.0

type StreamProtocolErrorReason string

StreamProtocolErrorReason names what the stream did that the SSE contract does not allow.

const (
	// StreamUnexpectedMediaType: a 2xx whose Content-Type is not text/event-stream.
	StreamUnexpectedMediaType StreamProtocolErrorReason = "unexpected_media_type"
	// StreamInvalidJSON: a data frame whose payload is not JSON, or is empty.
	StreamInvalidJSON StreamProtocolErrorReason = "invalid_json"
	// StreamInvalidEnvelope: a data frame whose payload is JSON but not an object.
	StreamInvalidEnvelope StreamProtocolErrorReason = "invalid_envelope"
	// StreamUnusableSequence: a data frame with no integer seq in the envelope and no integer SSE id.
	StreamUnusableSequence StreamProtocolErrorReason = "unusable_sequence"
	// StreamInvalidResync: a resync frame whose payload is not an object, or whose type is not "resync".
	StreamInvalidResync StreamProtocolErrorReason = "invalid_resync"
	// StreamFrameTooLarge: a frame grew past MaxFrameBytes without reaching its delimiter.
	StreamFrameTooLarge StreamProtocolErrorReason = "frame_too_large"
)

type StreamReader added in v0.2.0

type StreamReader struct {
	// contains filtered or unexported fields
}

StreamReader delivers the frames of one stream connection. It is not safe for concurrent use.

func (*StreamReader) Close added in v0.2.0

func (r *StreamReader) Close() error

Close closes the connection and releases the stream's context. Next returns io.EOF afterwards. Close is idempotent.

func (*StreamReader) LastSeq added in v0.2.0

func (r *StreamReader) LastSeq() (int64, bool)

LastSeq returns the sequence of the last data frame delivered on this connection, and false when none was. Resend it as Last-Event-ID to resume. A malformed frame never moves it.

func (*StreamReader) Next added in v0.2.0

func (r *StreamReader) Next() (StreamFrame, error)

Next blocks until the next frame arrives and returns it. It returns io.EOF when the server closes the stream cleanly (a partial frame at EOF is discarded, as the SSE specification says) or after Close; ctx.Err() when the context given to OpenStream is cancelled; a *StreamTimeoutError when the connection sent nothing for the idle bound; a *StreamProtocolError when the stream breaks the contract; or the transport error. Keep-alive comment frames are consumed silently. Every error is terminal: the connection is closed and later calls return the same error.

func (*StreamReader) Response added in v0.2.0

func (r *StreamReader) Response() *http.Response

Response returns the stream's HTTP response for its headers (X-Request-Id, the rate-limit headers). The body belongs to the reader; do not read it.

func (*StreamReader) RetryHint added in v0.2.0

func (r *StreamReader) RetryHint() (time.Duration, bool)

RetryHint returns the reconnection delay the server last sent in an SSE "retry:" field, and false when it sent none. The API does not send one today; a client that reconnects should also honor Retry-After on a *StreamHTTPError.

type StreamTimeoutError added in v0.3.0

type StreamTimeoutError struct {
	Phase      StreamTimeoutPhase
	Deadline   time.Duration
	LastSeq    int64
	HasLastSeq bool
	Err        error
}

StreamTimeoutError reports that a stream bound expired. Phase says which one, Deadline is the bound, and LastSeq is the last sequence delivered on the connection (HasLastSeq false when none was), so an idle timeout can be resumed from where it stopped. Err is the underlying transport error when there was one. A context the caller cancelled is reported as ctx.Err(), never as this error.

func (*StreamTimeoutError) Error added in v0.3.0

func (e *StreamTimeoutError) Error() string

func (*StreamTimeoutError) Timeout added in v0.3.0

func (e *StreamTimeoutError) Timeout() bool

Timeout reports that this error is a timeout, matching the net.Error convention.

func (*StreamTimeoutError) Unwrap added in v0.3.0

func (e *StreamTimeoutError) Unwrap() error

Unwrap exposes the transport error the bound produced, when there was one.

type StreamTimeoutPhase added in v0.3.0

type StreamTimeoutPhase string

StreamTimeoutPhase names which stream bound expired.

const (
	// StreamTimeoutStart: the response headers did not arrive within
	// WithStreamStartTimeout, so the stream never opened.
	StreamTimeoutStart StreamTimeoutPhase = "start"
	// StreamTimeoutIdle: the open stream sent nothing, not even a keep-alive,
	// for WithStreamIdleTimeout.
	StreamTimeoutIdle StreamTimeoutPhase = "idle"
)

type SubmitTraderExportParams

type SubmitTraderExportParams struct {
	// Format Output serialization. json = full envelope document (default); ndjson = full envelope as line 1 then one trade object per line; csv = flat trades rows only.
	Format *SubmitTraderExportParamsFormat `form:"format,omitempty" json:"format,omitempty"`

	// Fresh true: do not reuse a finished, running or reconciling job; only a queued job is reused, so the file is a snapshot read after this submit. Consumes quota when nothing is queued. Default false.
	Fresh *bool `form:"fresh,omitempty" json:"fresh,omitempty"`

	// XQueryValidation Opt into strict query-name validation. The default is compatible: unknown names are ignored and reported in X-Query-Ignored. With strict, an unknown name returns 400 bad_request with error.reason unknown_query_parameter before the handler runs, including when its percent escape is incomplete.
	XQueryValidation *SubmitTraderExportParamsXQueryValidation `json:"X-Query-Validation,omitempty"`
}

SubmitTraderExportParams defines parameters for SubmitTraderExport.

type SubmitTraderExportParamsFormat

type SubmitTraderExportParamsFormat string

SubmitTraderExportParamsFormat defines parameters for SubmitTraderExport.

const (
	SubmitTraderExportParamsFormatCsv    SubmitTraderExportParamsFormat = "csv"
	SubmitTraderExportParamsFormatJson   SubmitTraderExportParamsFormat = "json"
	SubmitTraderExportParamsFormatNdjson SubmitTraderExportParamsFormat = "ndjson"
)

Defines values for SubmitTraderExportParamsFormat.

func (SubmitTraderExportParamsFormat) Valid

Valid indicates whether the value is a known member of the SubmitTraderExportParamsFormat enum.

type SubmitTraderExportParamsXQueryValidation added in v0.3.0

type SubmitTraderExportParamsXQueryValidation string

SubmitTraderExportParamsXQueryValidation defines parameters for SubmitTraderExport.

const (
	SubmitTraderExportParamsXQueryValidationStrict SubmitTraderExportParamsXQueryValidation = "strict"
)

Defines values for SubmitTraderExportParamsXQueryValidation.

func (SubmitTraderExportParamsXQueryValidation) Valid added in v0.3.0

Valid indicates whether the value is a known member of the SubmitTraderExportParamsXQueryValidation enum.

type SubmitTraderExportResponse

type SubmitTraderExportResponse struct {
	Body         []byte
	HTTPResponse *http.Response
	// JSON200 the response for an HTTP 200 `application/json` response
	JSON200 *TraderExportJob
	// JSON202 the response for an HTTP 202 `application/json` response
	JSON202 *TraderExportJob
	// JSON400 the response for an HTTP 400 `application/json` response
	JSON400 *ApiError
	// JSON401 the response for an HTTP 401 `application/json` response
	JSON401 *ApiError
	// JSON402 the response for an HTTP 402 `application/json` response
	JSON402 *ApiError
	// JSON403 the response for an HTTP 403 `application/json` response
	JSON403 *ApiError
	// JSON404 the response for an HTTP 404 `application/json` response
	JSON404 *ApiError
	// JSON408 the response for an HTTP 408 `application/json` response
	JSON408 *ApiError
	// JSON423 the response for an HTTP 423 `application/json` response
	JSON423 *ApiError
	// JSON429 the response for an HTTP 429 `application/json` response
	JSON429 *ApiError
	// JSON500 the response for an HTTP 500 `application/json` response
	JSON500 *ApiError
	// JSON503 the response for an HTTP 503 `application/json` response
	JSON503 *ApiError
	// Headers200 the parsed response headers for an HTTP 200 response
	Headers200 *SubmitTraderExportResponse200Headers
	// Headers202 the parsed response headers for an HTTP 202 response
	Headers202 *SubmitTraderExportResponse202Headers
	// Headers429 the parsed response headers for an HTTP 429 response
	Headers429 *SubmitTraderExportResponse429Headers
	// Headers503 the parsed response headers for an HTTP 503 response
	Headers503 *SubmitTraderExportResponse503Headers
}

func ParseSubmitTraderExportResponse

func ParseSubmitTraderExportResponse(rsp *http.Response) (*SubmitTraderExportResponse, error)

ParseSubmitTraderExportResponse parses an HTTP response from a SubmitTraderExportWithResponse call

func (SubmitTraderExportResponse) ContentType

func (r SubmitTraderExportResponse) ContentType() string

ContentType is a convenience method to retrieve the Content-Type value from the HTTP response headers

func (SubmitTraderExportResponse) GetBody

func (r SubmitTraderExportResponse) GetBody() []byte

GetBody returns the raw response body bytes

func (SubmitTraderExportResponse) GetJSON200

GetJSON200 returns the response for an HTTP 200 `application/json` response

func (SubmitTraderExportResponse) GetJSON202

GetJSON202 returns the response for an HTTP 202 `application/json` response

func (SubmitTraderExportResponse) GetJSON400

func (r SubmitTraderExportResponse) GetJSON400() *ApiError

GetJSON400 returns the response for an HTTP 400 `application/json` response

func (SubmitTraderExportResponse) GetJSON401

func (r SubmitTraderExportResponse) GetJSON401() *ApiError

GetJSON401 returns the response for an HTTP 401 `application/json` response

func (SubmitTraderExportResponse) GetJSON402

func (r SubmitTraderExportResponse) GetJSON402() *ApiError

GetJSON402 returns the response for an HTTP 402 `application/json` response

func (SubmitTraderExportResponse) GetJSON403

func (r SubmitTraderExportResponse) GetJSON403() *ApiError

GetJSON403 returns the response for an HTTP 403 `application/json` response

func (SubmitTraderExportResponse) GetJSON404

func (r SubmitTraderExportResponse) GetJSON404() *ApiError

GetJSON404 returns the response for an HTTP 404 `application/json` response

func (SubmitTraderExportResponse) GetJSON408 added in v0.2.0

func (r SubmitTraderExportResponse) GetJSON408() *ApiError

GetJSON408 returns the response for an HTTP 408 `application/json` response

func (SubmitTraderExportResponse) GetJSON423

func (r SubmitTraderExportResponse) GetJSON423() *ApiError

GetJSON423 returns the response for an HTTP 423 `application/json` response

func (SubmitTraderExportResponse) GetJSON429

func (r SubmitTraderExportResponse) GetJSON429() *ApiError

GetJSON429 returns the response for an HTTP 429 `application/json` response

func (SubmitTraderExportResponse) GetJSON500

func (r SubmitTraderExportResponse) GetJSON500() *ApiError

GetJSON500 returns the response for an HTTP 500 `application/json` response

func (SubmitTraderExportResponse) GetJSON503

func (r SubmitTraderExportResponse) GetJSON503() *ApiError

GetJSON503 returns the response for an HTTP 503 `application/json` response

func (SubmitTraderExportResponse) Status

Status returns HTTPResponse.Status

func (SubmitTraderExportResponse) StatusCode

func (r SubmitTraderExportResponse) StatusCode() int

StatusCode returns HTTPResponse.StatusCode

type SubmitTraderExportResponse200Headers

type SubmitTraderExportResponse200Headers struct {
	RateLimitLimit      *int
	RateLimitRemaining  *int
	RateLimitReset      *int
	ServerTiming        *string
	XEffectiveQuery     *string
	XQueryIgnored       *string
	XRateLimitLimit     *int
	XRateLimitRemaining *int
	XRateLimitReset     *int
	XRequestId          *string
	XUsageAccounting    *string
}

SubmitTraderExportResponse200Headers the declared response headers of an HTTP 200 response for SubmitTraderExport

type SubmitTraderExportResponse202Headers

type SubmitTraderExportResponse202Headers struct {
	RateLimitLimit      *int
	RateLimitRemaining  *int
	RateLimitReset      *int
	ServerTiming        *string
	XEffectiveQuery     *string
	XQueryIgnored       *string
	XRateLimitLimit     *int
	XRateLimitRemaining *int
	XRateLimitReset     *int
	XRequestId          *string
	XUsageAccounting    *string
}

SubmitTraderExportResponse202Headers the declared response headers of an HTTP 202 response for SubmitTraderExport

type SubmitTraderExportResponse429Headers

type SubmitTraderExportResponse429Headers struct {
	RateLimitLimit      *int
	RateLimitRemaining  *int
	RateLimitReset      *int
	RetryAfter          *int
	XRateLimitLimit     *int
	XRateLimitRemaining *int
	XRateLimitReset     *int
	XRequestId          *string
}

SubmitTraderExportResponse429Headers the declared response headers of an HTTP 429 response for SubmitTraderExport

type SubmitTraderExportResponse503Headers

type SubmitTraderExportResponse503Headers struct {
	RetryAfter *int
	XRequestId *string
}

SubmitTraderExportResponse503Headers the declared response headers of an HTTP 503 response for SubmitTraderExport

type SubmitWhaleDatasetJSONBody added in v0.4.0

type SubmitWhaleDatasetJSONBody struct {
	// ConditionId Raw provider condition id or mkt_-prefixed id.
	ConditionId *string   `json:"condition_id,omitempty"`
	From        time.Time `json:"from"`

	// MinSize USD minimum, normalized to cents like replay.
	MinSize *float32  `json:"min_size,omitempty"`
	To      time.Time `json:"to"`
}

SubmitWhaleDatasetJSONBody defines parameters for SubmitWhaleDataset.

type SubmitWhaleDatasetJSONRequestBody added in v0.4.0

type SubmitWhaleDatasetJSONRequestBody SubmitWhaleDatasetJSONBody

SubmitWhaleDatasetJSONRequestBody defines body for SubmitWhaleDataset for application/json ContentType.

type SubmitWhaleDatasetResponse added in v0.4.0

type SubmitWhaleDatasetResponse struct {
	Body         []byte
	HTTPResponse *http.Response
	// JSON200 the response for an HTTP 200 `application/json` response
	JSON200 *WhaleDatasetJob
	// JSON202 the response for an HTTP 202 `application/json` response
	JSON202 *WhaleDatasetJob
	// JSON400 the response for an HTTP 400 `application/json` response
	JSON400 *ApiError
	// JSON401 the response for an HTTP 401 `application/json` response
	JSON401 *ApiError
	// JSON402 the response for an HTTP 402 `application/json` response
	JSON402 *ApiError
	// JSON403 the response for an HTTP 403 `application/json` response
	JSON403 *ApiError
	// JSON404 the response for an HTTP 404 `application/json` response
	JSON404 *ApiError
	// JSON408 the response for an HTTP 408 `application/json` response
	JSON408 *ApiError
	// JSON423 the response for an HTTP 423 `application/json` response
	JSON423 *ApiError
	// JSON429 the response for an HTTP 429 `application/json` response
	JSON429 *ApiError
	// JSON500 the response for an HTTP 500 `application/json` response
	JSON500 *ApiError
	// JSON503 the response for an HTTP 503 `application/json` response
	JSON503 *ApiError
	// Headers429 the parsed response headers for an HTTP 429 response
	Headers429 *SubmitWhaleDatasetResponse429Headers
	// Headers503 the parsed response headers for an HTTP 503 response
	Headers503 *SubmitWhaleDatasetResponse503Headers
}

func ParseSubmitWhaleDatasetResponse added in v0.4.0

func ParseSubmitWhaleDatasetResponse(rsp *http.Response) (*SubmitWhaleDatasetResponse, error)

ParseSubmitWhaleDatasetResponse parses an HTTP response from a SubmitWhaleDatasetWithResponse call

func (SubmitWhaleDatasetResponse) ContentType added in v0.4.0

func (r SubmitWhaleDatasetResponse) ContentType() string

ContentType is a convenience method to retrieve the Content-Type value from the HTTP response headers

func (SubmitWhaleDatasetResponse) GetBody added in v0.4.0

func (r SubmitWhaleDatasetResponse) GetBody() []byte

GetBody returns the raw response body bytes

func (SubmitWhaleDatasetResponse) GetJSON200 added in v0.4.0

GetJSON200 returns the response for an HTTP 200 `application/json` response

func (SubmitWhaleDatasetResponse) GetJSON202 added in v0.4.0

GetJSON202 returns the response for an HTTP 202 `application/json` response

func (SubmitWhaleDatasetResponse) GetJSON400 added in v0.4.0

func (r SubmitWhaleDatasetResponse) GetJSON400() *ApiError

GetJSON400 returns the response for an HTTP 400 `application/json` response

func (SubmitWhaleDatasetResponse) GetJSON401 added in v0.4.0

func (r SubmitWhaleDatasetResponse) GetJSON401() *ApiError

GetJSON401 returns the response for an HTTP 401 `application/json` response

func (SubmitWhaleDatasetResponse) GetJSON402 added in v0.4.0

func (r SubmitWhaleDatasetResponse) GetJSON402() *ApiError

GetJSON402 returns the response for an HTTP 402 `application/json` response

func (SubmitWhaleDatasetResponse) GetJSON403 added in v0.4.0

func (r SubmitWhaleDatasetResponse) GetJSON403() *ApiError

GetJSON403 returns the response for an HTTP 403 `application/json` response

func (SubmitWhaleDatasetResponse) GetJSON404 added in v0.4.0

func (r SubmitWhaleDatasetResponse) GetJSON404() *ApiError

GetJSON404 returns the response for an HTTP 404 `application/json` response

func (SubmitWhaleDatasetResponse) GetJSON408 added in v0.4.0

func (r SubmitWhaleDatasetResponse) GetJSON408() *ApiError

GetJSON408 returns the response for an HTTP 408 `application/json` response

func (SubmitWhaleDatasetResponse) GetJSON423 added in v0.4.0

func (r SubmitWhaleDatasetResponse) GetJSON423() *ApiError

GetJSON423 returns the response for an HTTP 423 `application/json` response

func (SubmitWhaleDatasetResponse) GetJSON429 added in v0.4.0

func (r SubmitWhaleDatasetResponse) GetJSON429() *ApiError

GetJSON429 returns the response for an HTTP 429 `application/json` response

func (SubmitWhaleDatasetResponse) GetJSON500 added in v0.4.0

func (r SubmitWhaleDatasetResponse) GetJSON500() *ApiError

GetJSON500 returns the response for an HTTP 500 `application/json` response

func (SubmitWhaleDatasetResponse) GetJSON503 added in v0.4.0

func (r SubmitWhaleDatasetResponse) GetJSON503() *ApiError

GetJSON503 returns the response for an HTTP 503 `application/json` response

func (SubmitWhaleDatasetResponse) Status added in v0.4.0

Status returns HTTPResponse.Status

func (SubmitWhaleDatasetResponse) StatusCode added in v0.4.0

func (r SubmitWhaleDatasetResponse) StatusCode() int

StatusCode returns HTTPResponse.StatusCode

type SubmitWhaleDatasetResponse429Headers added in v0.4.0

type SubmitWhaleDatasetResponse429Headers struct {
	RateLimitLimit      *int
	RateLimitRemaining  *int
	RateLimitReset      *int
	RetryAfter          *int
	XRateLimitLimit     *int
	XRateLimitRemaining *int
	XRateLimitReset     *int
	XRequestId          *string
}

SubmitWhaleDatasetResponse429Headers the declared response headers of an HTTP 429 response for SubmitWhaleDataset

type SubmitWhaleDatasetResponse503Headers added in v0.4.0

type SubmitWhaleDatasetResponse503Headers struct {
	RetryAfter *int
	XRequestId *string
}

SubmitWhaleDatasetResponse503Headers the declared response headers of an HTTP 503 response for SubmitWhaleDataset

type SuspiciousTrade added in v0.4.0

type SuspiciousTrade struct {
	// CreatedAt Stored trade timestamp.
	CreatedAt time.Time `json:"created_at"`

	// Evidence Stored whale_alerts.suspicion_signals JSON from the scorer.
	Evidence interface{} `json:"evidence"`

	// Id Prefixed ID (rf_...).
	Id     string `json:"id"`
	Market struct {
		ConditionId string `json:"condition_id"`
		Id          string `json:"id"`

		// Title Canonical market question when available.
		Title string `json:"title"`
	} `json:"market"`
	Scores struct {
		// Edge Null because the live scorer does not record this component.
		Edge float32 `json:"edge"`

		// FreshWallet Numeric evidence.fresh when recorded; otherwise null.
		FreshWallet float32 `json:"fresh_wallet"`

		// Size Numeric evidence.size when recorded; otherwise null.
		Size float32 `json:"size"`

		// Timing Null because the live scorer does not record this component.
		Timing float32 `json:"timing"`
	} `json:"scores"`

	// Severity The live scorer persists one threshold class.
	Severity SuspiciousTradeSeverity `json:"severity"`

	// SuspicionScore Stored score that met the live flag threshold.
	SuspicionScore float32 `json:"suspicion_score"`
	Trader         struct {
		Address  string `json:"address"`
		Id       string `json:"id"`
		Username string `json:"username"`
	} `json:"trader"`
}

SuspiciousTrade defines model for SuspiciousTrade.

type SuspiciousTradeSeverity added in v0.4.0

type SuspiciousTradeSeverity string

SuspiciousTradeSeverity The live scorer persists one threshold class.

const (
	SuspiciousTradeSeverityFlag SuspiciousTradeSeverity = "flag"
)

Defines values for SuspiciousTradeSeverity.

func (SuspiciousTradeSeverity) Valid added in v0.4.0

func (e SuspiciousTradeSeverity) Valid() bool

Valid indicates whether the value is a known member of the SuspiciousTradeSeverity enum.

type Trader

type Trader struct {
	Address string `json:"address"`

	// CategoryRecords Current evidence for observed and known categories (expand=categories or expand[]=categories). Omitted unless expanded. Includes insufficient, stale, unknown and degraded rows; absence of a category is not proof of skill. The global grade is unchanged.
	CategoryRecords *[]CategorySkillV2 `json:"category_records,omitempty"`

	// CategorySkillModel Model-wide readiness, read in the same database snapshot as category_records. Individual category rows retain their own status.
	CategorySkillModel *CategorySkillModelReadiness `json:"category_skill_model,omitempty"`

	// CategoryStrengths Per-category performance breakdown (expand=categories or expand[]=categories). Omitted unless expanded. Object keyed by category name; each value is the precomputed trader_rankings.category_ranks payload (rank, total_in_category, total_pnl, scaled_total_pnl, n_markets, wins, losses, win_rate; scaled_total_pnl is a legacy alias that currently equals total_pnl). RANK BASIS: rank and total_in_category use the same hourly breakpoint publication; categories absent from that publication are omitted until a later publication includes them. Current trader performance values update separately, so this is not a frozen historical record. BASIS: the calibration sample, which admits a position only above a 20 USD notional floor and with a chosen-side entry price strictly inside (0,1), because the ranks and the calibration edge derived from it depend on both rules. That is a different sample from GET /api/v1/trader/{address}/categories, which counts every settled market at any size, and the two differ in both directions. Measured on production 2026-09-22 over the 122,497 wallet-category pairs with at least 20 decided markets on both bases: the floored rate was higher in 56.5% of pairs, lower in 34.5% and equal in 9.0%, median +0.6 points, p10 -4.6, p90 +9.8, and 14.0% of pairs differ by 10 points or more. The difference is not only small positions: on a 1-in-250 wallet sample the same day, admitted markets won 56.6% while markets dropped by the notional floor alone won 45.2% and markets dropped by the entry-price rule alone won 48.7%. n_markets counts every admitted market including the ones that resolved at exactly zero P&L, so it is not the denominator of win_rate: it differed from wins + losses in 15.8% of pairs with at least 5 decided markets. The two tables also run on different clocks, this one updated incrementally and that route rebuilt daily, so a same-day read can differ on timing alone. Use this for rank context and that route for the wallet's plain record. Pass-through DB JSON: keys and value shape are DB-owned, so the inner shape is intentionally unconstrained and may carry additional compatibility fields.
	CategoryStrengths *map[string]interface{} `json:"category_strengths,omitempty"`

	// DataQuality Data age and coverage for this trader body. Always present. Its five groups are sync (traders.last_synced, covering pnl.total, pnl.realized, stats.markets_traded, stats.win_rate, stats.daily_win_rate, last_active, synced_at and sync_status), ranking (trader_rankings.computed_at, covering grade, score, streak_tier, forecast_score and forecast_evidence), leaderboard_rank (leaderboard_rank_refresh_state.completed_at, the completion time of the latest fully completed global rank refresh, covering rank), volume (trader_usd_volume.observed_at, covering stats.total_volume) and positions (trader_position_snapshots.last_refreshed_at with traders.last_synced as fallback, covering pnl.unrealized, the open-position aggregate). The positions clock is the latest successful /positions snapshot when one exists, otherwise the last completed trader sync; it does not date closed or native accounting values. A rank or position value remains unknown or unavailable when its clock or value is absent. For an unknown wallet every group is unavailable. If the open-position read itself fails, positions is unavailable with a reason that says so, pnl.unrealized is absent, and the body is answered fresh (meta.cached false) and is not kept for later callers.
	DataQuality DataQuality `json:"data_quality"`

	// ForecastEvidence Share of forecast_score supported by the trader's own resolved-market record rather than the cohort prior: n / (n + 30). Omitted when forecast_score is unavailable.
	ForecastEvidence *float32 `json:"forecast_evidence,omitempty"`

	// ForecastScore Capital-normalized forecasting score: the cohort percentile (0-100) of the EB-shrunk calibration edge. Omitted when the forecasting signal is unavailable; never replaced with zero.
	ForecastScore *float32     `json:"forecast_score,omitempty"`
	Grade         *TraderGrade `json:"grade,omitempty"`

	// Id Prefixed ID (trd_...).
	Id         string     `json:"id"`
	LastActive *time.Time `json:"last_active,omitempty"`
	Pnl        struct {
		// Exact Additive lossless counterpart. Omitted when the trusted native realized-P&L source is unavailable; existing numeric fields keep their display-safe v1 semantics.
		Exact *TraderPnlExact `json:"exact,omitempty"`

		// Last30d DEPRECATED, never sent. The local pnl_30d rollup over-counted P&L (#5416 class) and is no longer emitted. Read the provider-native monthly window from GET /api/trader/{address}/profile-summary instead.
		Last30d *float32 `json:"last_30d,omitempty"`

		// Last7d DEPRECATED, never sent. The local pnl_7d rollup over-counted P&L (#5416 class) and is no longer emitted. Read the provider-native weekly window from GET /api/trader/{address}/profile-summary instead.
		Last7d *float32 `json:"last_7d,omitempty"`

		// Realized For pnl.realized, expand=trust marks a matching native accounting snapshot as computed: native Polymarket realized P&L plus credited maker and taker rebates, with fees already included. The exact numeric value is truncated toward zero to cents before conversion to a JSON number. Without a matching native accounting snapshot, pnl.realized is omitted and its trust metadata is unavailable. Raw total P&L is never substituted for realized P&L.
		Realized   *float32 `json:"realized,omitempty"`
		Total      *float32 `json:"total,omitempty"`
		Unrealized *float32 `json:"unrealized,omitempty"`
	} `json:"pnl"`

	// QuantMetrics Curated advanced risk/performance metrics (expand=quant_metrics or expand[]=quant_metrics). Omitted unless expanded and backed by a computed row strictly under six hours old; a missing row, NULL computed_at, or age of exactly six hours or more is stale and omitted. Provider-input changes may intentionally lag inside the bounded six-hour window. When present, all listed fields are present (each is a number or null); null means insufficient trade history and must not be treated as 0. The fixed field shape is unchanged.
	QuantMetrics *struct {
		// ConsistencyPercentile Cross-sectional percentile rank of edge consistency versus all traders, 0-100. null when insufficient history.
		ConsistencyPercentile float32 `json:"consistency_percentile"`

		// CopyScore Copyability score, 0-100. Same base as smart_score minus penalties for traits that make a strategy hard to replicate: -20 if fewer than 50 markets traded, -15 if positions are highly concentrated, -15 if position sizing exceeds about 2x Kelly, -10 if the worst single-trade loss exceeds 30%, -10 if edge is inconsistent; result clamped to 0-100. Higher means easier to follow. null when insufficient history.
		CopyScore float32 `json:"copy_score"`

		// EdgeConsistency Share of the trader's last 30 days with realized P&L that closed positive, 0-1 (higher is more consistent). A day with no realized P&L is not one of them, so the window can span months. null below 10 such days; null never means 0.
		EdgeConsistency float32 `json:"edge_consistency"`

		// PfPercentile Cross-sectional percentile rank of profit factor versus all traders, 0-100. null when insufficient history.
		PfPercentile float32 `json:"pf_percentile"`

		// ProfitFactor Gross profit divided by gross loss; greater than 1 is profitable. Capped at 1000 when there are effectively no losses. null when insufficient history.
		ProfitFactor float32 `json:"profit_factor"`

		// Sharpe30d Sharpe ratio over the trailing 30 days (risk-adjusted return; higher is better). Magnitude can be large for small samples. null when insufficient history.
		Sharpe30d float32 `json:"sharpe_30d"`

		// Sharpe7d Sharpe ratio over the trailing 7 days (risk-adjusted return; higher is better). null when insufficient history.
		Sharpe7d float32 `json:"sharpe_7d"`

		// SharpePercentile Cross-sectional percentile rank of the trader's Sharpe ratio versus all traders, 0-100. null when insufficient history.
		SharpePercentile float32 `json:"sharpe_percentile"`

		// SmartScore Composite skill score, 0-100. smart_score = clamp(0, 100, 30*sharpe_percentile_fraction + 20*profit_factor_percentile_fraction + 20*edge_consistency_percentile_fraction + 10*min(1, return_on_capital/2) + 10*equity_smoothness + 10*(1 - min(1, asset_concentration))). Higher is better. null when insufficient history.
		SmartScore float32 `json:"smart_score"`
	} `json:"quant_metrics,omitempty"`
	Rank  *int     `json:"rank,omitempty"`
	Score *float32 `json:"score,omitempty"`
	Stats struct {
		DailyWinRate *float32 `json:"daily_win_rate,omitempty"`

		// Exact Additive lossless counterpart to `total_volume`. Omitted when the verified provider observation is unavailable.
		Exact         *TraderStatsExact `json:"exact,omitempty"`
		MarketsTraded *int              `json:"markets_traded,omitempty"`

		// TotalVolume Full-history both-sides USD cash volume from Polymarket user-volume. Omitted without a verified observation; never leaderboard shares. Its observation time is published as the volume group in data_quality and as trust.total_volume.freshness.as_of, both trader_usd_volume.observed_at; synced_at is a different clock and is never a substitute for it.
		TotalVolume *float32 `json:"total_volume,omitempty"`
		WinRate     *float32 `json:"win_rate,omitempty"`
	} `json:"stats"`
	Strategy *struct {
		Confidence   *float32 `json:"confidence,omitempty"`
		Description  *string  `json:"description,omitempty"`
		StrategyType *string  `json:"strategy_type,omitempty"`
	} `json:"strategy,omitempty"`

	// StreakTier Hot-streak tier (trailing-7d cross-sectional percentile); a separate axis from the all-time grade. Omitted when there is no recent activity.
	StreakTier *TraderStreakTier `json:"streak_tier,omitempty"`

	// SyncStatus synced, unknown, or pending.
	SyncStatus *string    `json:"sync_status,omitempty"`
	SyncedAt   *time.Time `json:"synced_at,omitempty"`

	// Trust Field-level trust metadata. Present only when expand=trust or expand[]=trust is requested.
	Trust    *TraderTrust `json:"trust,omitempty"`
	Username *string      `json:"username,omitempty"`
}

Trader defines model for Trader.

type TraderCategoryRecord added in v0.2.0

type TraderCategoryRecord struct {
	// Category Canonical category bucket, for example Soccer, Esports, Tennis. Esports is one bucket, and the Esports record carries its per-game records in games.
	Category string `json:"category"`

	// Decided Markets it closed with a profit or a loss. A market that resolved at exactly zero P&L is in neither count, so this is not the wallet's market count in the category.
	Decided int `json:"decided"`

	// Games The wallet's record per esports title, busiest first. Present only on the Esports record, and only when the wallet has a settled market in at least one title; absent on every other category and on an Esports record whose markets are all in series that are not games (skin-price indices, streamer props) or carry no series. Absent means no per-game record, the same rule as an absent category. Each entry's decided is a subset of the Esports record's, read in the same statement from the same daily rebuild.
	Games *[]TraderEsportsGameRecord `json:"games,omitempty"`

	// Status measured: decided cleared min_decided_for_win_rate and win_rate carries the rate. not_enough_data: the counts are real but the sample is under the floor, so no percent is published. A failed read is an error response, never a status value.
	Status TraderCategoryRecordStatus `json:"status"`

	// WinRate wins / decided in [0,1], truncated to four decimals. Null when status is not_enough_data.
	WinRate float32 `json:"win_rate"`

	// Wins Markets in this category the wallet closed with a profit.
	Wins int `json:"wins"`
}

TraderCategoryRecord defines model for TraderCategoryRecord.

type TraderCategoryRecordStatus added in v0.2.0

type TraderCategoryRecordStatus string

TraderCategoryRecordStatus measured: decided cleared min_decided_for_win_rate and win_rate carries the rate. not_enough_data: the counts are real but the sample is under the floor, so no percent is published. A failed read is an error response, never a status value.

const (
	TraderCategoryRecordStatusMeasured      TraderCategoryRecordStatus = "measured"
	TraderCategoryRecordStatusNotEnoughData TraderCategoryRecordStatus = "not_enough_data"
)

Defines values for TraderCategoryRecordStatus.

func (TraderCategoryRecordStatus) Valid added in v0.2.0

func (e TraderCategoryRecordStatus) Valid() bool

Valid indicates whether the value is a known member of the TraderCategoryRecordStatus enum.

type TraderCategoryRecords added in v0.2.0

type TraderCategoryRecords struct {
	// Address Resolved wallet address, lowercased.
	Address string `json:"address"`

	// Basis Which sample the counts come from: every settled market in the category, at any position size. category_strengths on the trader endpoint reads the floored calibration sample instead, so the two differ in both directions: measured on production 2026-09-22 over the 122,497 wallet-category pairs with at least 20 decided markets on both bases, the floored rate was higher in 56.5% of pairs and lower in 34.5%, median +0.6 points, p10 -4.6, p90 +9.8, with 14.0% of pairs 10 points apart or more. Neither corrects the other.
	Basis TraderCategoryRecordsBasis `json:"basis"`

	// ComputedAt When the served records were last rebuilt (RFC3339, Z): the newest stamp among every row served, game rows included, which the daily rebuild writes in one transaction. Null when the wallet has no record at all.
	ComputedAt time.Time `json:"computed_at"`

	// Id Prefixed trader id (trd_<wallet>).
	Id string `json:"id"`

	// MinDecidedForWinRate Decided markets a category needs before win_rate is served. Published so a caller can apply its own sample rule to the raw counts.
	MinDecidedForWinRate int `json:"min_decided_for_win_rate"`

	// Records One entry per canonical category with at least one decided market, ordered by decided descending then category. A category with no decided market is omitted. The Esports entry carries its per-game records in games.
	Records []TraderCategoryRecord `json:"records"`
}

TraderCategoryRecords defines model for TraderCategoryRecords.

type TraderCategoryRecordsBasis added in v0.2.0

type TraderCategoryRecordsBasis string

TraderCategoryRecordsBasis Which sample the counts come from: every settled market in the category, at any position size. category_strengths on the trader endpoint reads the floored calibration sample instead, so the two differ in both directions: measured on production 2026-09-22 over the 122,497 wallet-category pairs with at least 20 decided markets on both bases, the floored rate was higher in 56.5% of pairs and lower in 34.5%, median +0.6 points, p10 -4.6, p90 +9.8, with 14.0% of pairs 10 points apart or more. Neither corrects the other.

const (
	SettledMarketsAllSizes TraderCategoryRecordsBasis = "settled_markets_all_sizes"
)

Defines values for TraderCategoryRecordsBasis.

func (TraderCategoryRecordsBasis) Valid added in v0.2.0

func (e TraderCategoryRecordsBasis) Valid() bool

Valid indicates whether the value is a known member of the TraderCategoryRecordsBasis enum.

type TraderContext

type TraderContext struct {
	// DataAsOf RFC3339 freshness of the OPEN-position-level data: when a position_summary is present this mirrors its as_of byte-for-byte (latest /positions snapshot, else last completed sync) -- the open-position freshness clock, since the snapshot advances only open positions; otherwise the trader's last completed sync, even if an unserved position snapshot exists. Null when the selected clock is unavailable; a missing breakdown does not establish position or accounting freshness.
	DataAsOf time.Time `json:"data_as_of"`

	// FreshnessNote Human-readable statement of the point-in-time snapshot semantics (data_as_of is the open-position clock -- the latest /positions snapshot, else the last completed sync; the snapshot advances only open positions, so resolved counts and win rate date to the last full sync; native realized P&L follows its accounting snapshot -- not a live feed; re-fetch for fresher data).
	FreshnessNote string `json:"freshness_note"`

	// PositionSummary Aggregate position and P&L coverage for the trader. Omitted entirely (key absent, never null) when the trader is not in the local database or native net economics is unavailable. Realized fields remain numbers when present, including a genuine zero.
	PositionSummary *struct {
		// AsOf RFC3339 freshness of the served OPEN-position data: the trader's latest /positions snapshot, else the last completed sync. The snapshot advances ONLY open positions, so read this as the open-position freshness clock -- the resolved/closed aggregates on this same summary (markets_resolved, resolved_win_rate) advance only on a full sync. The value is the /positions snapshot instant when one exists, so it is typically at or just before the trader-level last sync on a normal sync, and can be AFTER it while the active-view loop refreshes open positions between full syncs. This clock does not establish native accounting freshness. Always present on the wire (serialized as JSON null when the trader has neither a snapshot nor a sync); never omitted.
		AsOf time.Time `json:"as_of"`

		// CostBasisLocked Cost basis (USD) currently tied up in open positions.
		CostBasisLocked float32 `json:"cost_basis_locked"`

		// MarketsOpen Synced markets still open with residual value (open positions with current value > 0).
		MarketsOpen int `json:"markets_open"`

		// MarketsResolved Synced markets that have resolved.
		MarketsResolved int `json:"markets_resolved"`

		// MarketsSynced Markets with locally synced position rows.
		MarketsSynced int `json:"markets_synced"`

		// MarketsTotal Provider markets_traded count when known; null when the provider total is unavailable.
		MarketsTotal int `json:"markets_total"`

		// ResolvedDecided Resolved markets that settled at a non-zero realized P&L: the win-rate denominator. At most markets_resolved; the difference is markets settled at exactly zero or with an unknown P&L. Additive; null only on a summary cached before the field existed.
		ResolvedDecided int `json:"resolved_decided"`

		// ResolvedWinRate Win rate as a percentage (0-100): resolved_wins over resolved_decided. A resolved market that settled at exactly zero realized P&L (a void, a refund, a fully hedged position) is neither a win nor a loss and is not in the denominator, the same rule the leaderboard applies; null when no resolved market was decided.
		ResolvedWinRate float32 `json:"resolved_win_rate"`

		// ResolvedWins Resolved markets that settled at positive realized P&L: the win-rate numerator. Additive; null only on a summary cached before the field existed.
		ResolvedWins int `json:"resolved_wins"`

		// SyncCoverage markets_synced divided by markets_total when the provider total is known (capped at 1.0); 0.0-1.0. When markets_total is unknown or not positive (null, 0, or negative), this is 1.0 if any markets are synced (else 0.0), so cross-check markets_total before treating 1.0 as full coverage.
		SyncCoverage float32 `json:"sync_coverage"`

		// SyncedRealizedPnl Native net realized P&L (USD) including credited rebates, minus the stored realized component of open positions with positive current value. Rebates are credited to the account, not to a position, so every credited rebate stays in this figure. NUMERIC arithmetic precedes conversion to a JSON number.
		SyncedRealizedPnl float32 `json:"synced_realized_pnl"`

		// TotalRealizedPnl Native net realized P&L (USD) including credited rebates, read directly from the accounting snapshot. Position sync_coverage is separate from this accounting basis.
		TotalRealizedPnl float32 `json:"total_realized_pnl"`

		// UnrealizedMtm Mark-to-market unrealized P&L (USD) on open positions.
		UnrealizedMtm float32 `json:"unrealized_mtm"`
	} `json:"position_summary,omitempty"`
	Trader Trader `json:"trader"`
}

TraderContext defines model for TraderContext.

type TraderEsportsGameRecord added in v0.2.0

type TraderEsportsGameRecord struct {
	// Decided Markets in this game it closed with a profit or a loss. A subset of the parent Esports record's decided: the two are read from the same daily rebuild.
	Decided int `json:"decided"`

	// Game The game, by the same name every holder chip carries in category_win_rate_game: LoL, CS2, Dota 2, Valorant, Call of Duty, Honor of Kings, Mobile Legends: Bang Bang, Overwatch, Rainbow Six Siege, Rocket League or StarCraft II. Match a chip to this row by string equality.
	Game string `json:"game"`

	// SeriesSlug The Polymarket series slug the record is keyed on: league-of-legends, counter-strike, dota-2, valorant, call-of-duty, honor-of-kings, mobile-legends-bang-bang, overwatch, rainbow-six-siege, rocket-league or starcraft-2. The stable key; game is the label.
	SeriesSlug string `json:"series_slug"`

	// Status The same rule as the parent record: measured when decided cleared min_decided_for_win_rate, not_enough_data when the counts are real but the sample is under the floor. A chip on a market in this game shows this row's rate when it is measured and the Esports bucket's otherwise.
	Status TraderEsportsGameRecordStatus `json:"status"`

	// WinRate wins / decided in [0,1], truncated to four decimals. Null when status is not_enough_data.
	WinRate float32 `json:"win_rate"`

	// Wins Markets in this game the wallet closed with a profit.
	Wins int `json:"wins"`
}

TraderEsportsGameRecord defines model for TraderEsportsGameRecord.

type TraderEsportsGameRecordStatus added in v0.2.0

type TraderEsportsGameRecordStatus string

TraderEsportsGameRecordStatus The same rule as the parent record: measured when decided cleared min_decided_for_win_rate, not_enough_data when the counts are real but the sample is under the floor. A chip on a market in this game shows this row's rate when it is measured and the Esports bucket's otherwise.

const (
	TraderEsportsGameRecordStatusMeasured      TraderEsportsGameRecordStatus = "measured"
	TraderEsportsGameRecordStatusNotEnoughData TraderEsportsGameRecordStatus = "not_enough_data"
)

Defines values for TraderEsportsGameRecordStatus.

func (TraderEsportsGameRecordStatus) Valid added in v0.2.0

Valid indicates whether the value is a known member of the TraderEsportsGameRecordStatus enum.

type TraderExportArtifactManifest added in v0.4.0

type TraderExportArtifactManifest struct {
	// CompressedSha256 Lowercase SHA-256 of the stored gzip bytes; the multipart ETag is not used as this checksum.
	CompressedSha256 string `json:"compressed_sha256"`

	// CompressedSizeBytes Exact byte count of the gzip-compressed bytes stored by the object provider.
	CompressedSizeBytes int64 `json:"compressed_size_bytes"`

	// ContentSha256 Lowercase SHA-256 of the decompressed content bytes.
	ContentSha256 string `json:"content_sha256"`

	// ContentSizeBytes Exact byte count of the decompressed content stream clients receive.
	ContentSizeBytes int64 `json:"content_size_bytes"`

	// Coverage Sections represented by the artifact. JSON and NDJSON carry the full envelope and trades; CSV carries trade rows only.
	Coverage TraderExportArtifactManifestCoverage `json:"coverage"`

	// Format Serialization used for the decompressed content.
	Format     TraderExportArtifactManifestFormat `json:"format"`
	Generation TraderExportGeneration             `json:"generation"`

	// ManifestVersion Version of the artifact manifest contract.
	ManifestVersion string `json:"manifest_version"`

	// RowCount Number of trade rows written.
	RowCount int64 `json:"row_count"`

	// SchemaVersion Stable schema identifier for the selected serialization.
	SchemaVersion TraderExportArtifactManifestSchemaVersion `json:"schema_version"`
}

TraderExportArtifactManifest defines model for TraderExportArtifactManifest.

type TraderExportArtifactManifestCoverage added in v0.4.0

type TraderExportArtifactManifestCoverage string

TraderExportArtifactManifestCoverage Sections represented by the artifact. JSON and NDJSON carry the full envelope and trades; CSV carries trade rows only.

const (
	FullEnvelopeAndTrades TraderExportArtifactManifestCoverage = "full_envelope_and_trades"
	TradesOnly            TraderExportArtifactManifestCoverage = "trades_only"
)

Defines values for TraderExportArtifactManifestCoverage.

func (TraderExportArtifactManifestCoverage) Valid added in v0.4.0

Valid indicates whether the value is a known member of the TraderExportArtifactManifestCoverage enum.

type TraderExportArtifactManifestFormat added in v0.4.0

type TraderExportArtifactManifestFormat string

TraderExportArtifactManifestFormat Serialization used for the decompressed content.

const (
	TraderExportArtifactManifestFormatCsv    TraderExportArtifactManifestFormat = "csv"
	TraderExportArtifactManifestFormatJson   TraderExportArtifactManifestFormat = "json"
	TraderExportArtifactManifestFormatNdjson TraderExportArtifactManifestFormat = "ndjson"
)

Defines values for TraderExportArtifactManifestFormat.

func (TraderExportArtifactManifestFormat) Valid added in v0.4.0

Valid indicates whether the value is a known member of the TraderExportArtifactManifestFormat enum.

type TraderExportArtifactManifestSchemaVersion added in v0.4.0

type TraderExportArtifactManifestSchemaVersion string

TraderExportArtifactManifestSchemaVersion Stable schema identifier for the selected serialization.

const (
	TraderExportCsvV1    TraderExportArtifactManifestSchemaVersion = "trader-export-csv-v1"
	TraderExportJsonV1   TraderExportArtifactManifestSchemaVersion = "trader-export-json-v1"
	TraderExportNdjsonV1 TraderExportArtifactManifestSchemaVersion = "trader-export-ndjson-v1"
)

Defines values for TraderExportArtifactManifestSchemaVersion.

func (TraderExportArtifactManifestSchemaVersion) Valid added in v0.4.0

Valid indicates whether the value is a known member of the TraderExportArtifactManifestSchemaVersion enum.

type TraderExportCategoryWatermark added in v0.4.0

type TraderExportCategoryWatermark struct {
	Coverage         string    `json:"coverage"`
	DataAsOf         time.Time `json:"data_as_of"`
	PublicationFence time.Time `json:"publication_fence"`
	Source           string    `json:"source"`
}

TraderExportCategoryWatermark defines model for TraderExportCategoryWatermark.

type TraderExportGeneration added in v0.4.0

type TraderExportGeneration struct {
	Consistency TraderExportGenerationConsistency `json:"consistency"`

	// Id Opaque generation identity selected for the coherent read snapshot.
	Id               openapi_types.UUID           `json:"id"`
	SelectedAt       time.Time                    `json:"selected_at"`
	SourceWatermarks TraderExportSourceWatermarks `json:"source_watermarks"`
}

TraderExportGeneration defines model for TraderExportGeneration.

type TraderExportGenerationConsistency added in v0.4.0

type TraderExportGenerationConsistency string

TraderExportGenerationConsistency defines model for TraderExportGeneration.Consistency.

const (
	RepeatableRead TraderExportGenerationConsistency = "repeatable_read"
)

Defines values for TraderExportGenerationConsistency.

func (TraderExportGenerationConsistency) Valid added in v0.4.0

Valid indicates whether the value is a known member of the TraderExportGenerationConsistency enum.

type TraderExportJob

type TraderExportJob struct {
	Data struct {
		// Artifact Present only while status is ready: the stored object's identity, so a client can check the download it receives.
		Artifact *struct {
			// ArtifactId Stable identity for this completed export artifact; unchanged when a temporary download URL is renewed.
			ArtifactId string `json:"artifact_id"`

			// CompressedSizeBytes Bytes on the wire (gzip); file_size is the decompressed size.
			CompressedSizeBytes int64                                      `json:"compressed_size_bytes"`
			ContentEncoding     TraderExportJobDataArtifactContentEncoding `json:"content_encoding"`
			ContentType         TraderExportJobDataArtifactContentType     `json:"content_type"`

			// Etag The storage ETag of the object.
			Etag string `json:"etag"`

			// Manifest Immutable manifest for artifacts generated with manifest support; null on historical artifacts written before this contract.
			Manifest *TraderExportArtifactManifest `json:"manifest"`
		} `json:"artifact,omitempty"`

		// Attempt Worker claims so far.
		Attempt int `json:"attempt"`

		// CancelRequestedAt When the owner asked to cancel the job; null otherwise. Set on every cancelled job, including one cancelled while queued. While status is cancel_requested this is the instant the worker was asked to stop.
		CancelRequestedAt time.Time `json:"cancel_requested_at"`

		// CancelledAt When the job reached cancelled; null until then.
		CancelledAt time.Time `json:"cancelled_at"`
		CreatedAt   time.Time `json:"created_at"`

		// DataAsOf What the file is a snapshot of: the trader's served-data clock (the latest position refresh, else the last completed sync) when the file was written; the same value as export_metadata.data_as_of inside the file. null until the file is written, or when the trader had neither. Read this, not ready_at, to decide whether a reused job is fresh enough; submit with fresh=true for a newer snapshot.
		DataAsOf time.Time `json:"data_as_of"`
		Error    string    `json:"error"`

		// ExpiredAt When the job became expired; null until then.
		ExpiredAt time.Time `json:"expired_at"`

		// ExpiresAt The retention window: 24 hours from submit. A ready file downloads until this instant; a job that has not reached ready by it fails. A reused job (200 on submit) keeps its original window.
		ExpiresAt time.Time                 `json:"expires_at"`
		FailedAt  time.Time                 `json:"failed_at"`
		FileSize  int64                     `json:"file_size"`
		Format    TraderExportJobDataFormat `json:"format"`
		JobId     int64                     `json:"job_id"`

		// MaxAttempts The job fails when attempt reaches this.
		MaxAttempts int `json:"max_attempts"`

		// NextAction What to do next: poll the status route after poll_after_s, follow the download route, or submit a new export. Published beside status so a status value added later does not strand a client.
		NextAction TraderExportJobDataNextAction `json:"next_action"`

		// PollAfterS Seconds to wait before polling again. Absent when terminal. 5 while queued, running or cancel_requested; 300 while reconcile_required, the cadence that state can change at.
		PollAfterS      *int  `json:"poll_after_s,omitempty"`
		ProcessedTrades int64 `json:"processed_trades"`

		// ReadyAt When the file became downloadable. null before ready, and on jobs finalized before this field existed.
		ReadyAt time.Time `json:"ready_at"`

		// StartedAt When the worker last claimed the job; null while queued.
		StartedAt time.Time `json:"started_at"`

		// Status queued: accepted, not started. running: the worker is streaming rows. reconcile_required: the upload finished but the storage completion answer was lost; the hourly reconciler reads the object back and moves the job to ready or failed, and expires_at bounds the wait. ready: downloadable until expires_at. failed: terminal; error says why; submit a new export. expired: the retention window passed; the file is retired, the download route answers 410, submit a new export. cancel_requested: the owner cancelled a running job (POST /api/v1/trader/{address}/export/cancel); the worker stops at its next safe point and the job reads cancelled. cancelled: terminal; the owner cancelled the job and no file was published; submit a new export. A job that has not reached ready by expires_at reads failed with error 'export expired before completion'. failed, cancelled and expired rows stay readable for 48 hours, then the job answers 404.
		Status TraderExportJobDataStatus `json:"status"`

		// Terminal True when status never changes again (ready, failed, expired, cancelled). Stop polling.
		Terminal    bool  `json:"terminal"`
		TotalTrades int64 `json:"total_trades"`
	} `json:"data"`
	Meta   ResponseMeta          `json:"meta"`
	Object TraderExportJobObject `json:"object"`
}

TraderExportJob defines model for TraderExportJob.

type TraderExportJobDataArtifactContentEncoding added in v0.4.0

type TraderExportJobDataArtifactContentEncoding string

TraderExportJobDataArtifactContentEncoding defines model for TraderExportJob.Data.Artifact.ContentEncoding.

const (
	TraderExportJobDataArtifactContentEncodingGzip TraderExportJobDataArtifactContentEncoding = "gzip"
)

Defines values for TraderExportJobDataArtifactContentEncoding.

func (TraderExportJobDataArtifactContentEncoding) Valid added in v0.4.0

Valid indicates whether the value is a known member of the TraderExportJobDataArtifactContentEncoding enum.

type TraderExportJobDataArtifactContentType added in v0.4.0

type TraderExportJobDataArtifactContentType string

TraderExportJobDataArtifactContentType defines model for TraderExportJob.Data.Artifact.ContentType.

const (
	TraderExportJobDataArtifactContentTypeApplicationjson    TraderExportJobDataArtifactContentType = "application/json"
	TraderExportJobDataArtifactContentTypeApplicationxNdjson TraderExportJobDataArtifactContentType = "application/x-ndjson"
	TraderExportJobDataArtifactContentTypeTextcsv            TraderExportJobDataArtifactContentType = "text/csv"
)

Defines values for TraderExportJobDataArtifactContentType.

func (TraderExportJobDataArtifactContentType) Valid added in v0.4.0

Valid indicates whether the value is a known member of the TraderExportJobDataArtifactContentType enum.

type TraderExportJobDataFormat

type TraderExportJobDataFormat string

TraderExportJobDataFormat defines model for TraderExportJob.Data.Format.

const (
	TraderExportJobDataFormatCsv    TraderExportJobDataFormat = "csv"
	TraderExportJobDataFormatJson   TraderExportJobDataFormat = "json"
	TraderExportJobDataFormatNdjson TraderExportJobDataFormat = "ndjson"
)

Defines values for TraderExportJobDataFormat.

func (TraderExportJobDataFormat) Valid

func (e TraderExportJobDataFormat) Valid() bool

Valid indicates whether the value is a known member of the TraderExportJobDataFormat enum.

type TraderExportJobDataNextAction added in v0.4.0

type TraderExportJobDataNextAction string

TraderExportJobDataNextAction What to do next: poll the status route after poll_after_s, follow the download route, or submit a new export. Published beside status so a status value added later does not strand a client.

const (
	TraderExportJobDataNextActionDownload TraderExportJobDataNextAction = "download"
	TraderExportJobDataNextActionPoll     TraderExportJobDataNextAction = "poll"
	TraderExportJobDataNextActionResubmit TraderExportJobDataNextAction = "resubmit"
)

Defines values for TraderExportJobDataNextAction.

func (TraderExportJobDataNextAction) Valid added in v0.4.0

Valid indicates whether the value is a known member of the TraderExportJobDataNextAction enum.

type TraderExportJobDataStatus

type TraderExportJobDataStatus string

TraderExportJobDataStatus queued: accepted, not started. running: the worker is streaming rows. reconcile_required: the upload finished but the storage completion answer was lost; the hourly reconciler reads the object back and moves the job to ready or failed, and expires_at bounds the wait. ready: downloadable until expires_at. failed: terminal; error says why; submit a new export. expired: the retention window passed; the file is retired, the download route answers 410, submit a new export. cancel_requested: the owner cancelled a running job (POST /api/v1/trader/{address}/export/cancel); the worker stops at its next safe point and the job reads cancelled. cancelled: terminal; the owner cancelled the job and no file was published; submit a new export. A job that has not reached ready by expires_at reads failed with error 'export expired before completion'. failed, cancelled and expired rows stay readable for 48 hours, then the job answers 404.

const (
	TraderExportJobDataStatusCancelRequested   TraderExportJobDataStatus = "cancel_requested"
	TraderExportJobDataStatusCancelled         TraderExportJobDataStatus = "cancelled"
	TraderExportJobDataStatusExpired           TraderExportJobDataStatus = "expired"
	TraderExportJobDataStatusFailed            TraderExportJobDataStatus = "failed"
	TraderExportJobDataStatusQueued            TraderExportJobDataStatus = "queued"
	TraderExportJobDataStatusReady             TraderExportJobDataStatus = "ready"
	TraderExportJobDataStatusReconcileRequired TraderExportJobDataStatus = "reconcile_required"
	TraderExportJobDataStatusRunning           TraderExportJobDataStatus = "running"
)

Defines values for TraderExportJobDataStatus.

func (TraderExportJobDataStatus) Valid

func (e TraderExportJobDataStatus) Valid() bool

Valid indicates whether the value is a known member of the TraderExportJobDataStatus enum.

type TraderExportJobObject

type TraderExportJobObject string

TraderExportJobObject defines model for TraderExportJob.Object.

const (
	TraderExportJobObjectTraderExportJob TraderExportJobObject = "trader_export_job"
)

Defines values for TraderExportJobObject.

func (TraderExportJobObject) Valid

func (e TraderExportJobObject) Valid() bool

Valid indicates whether the value is a known member of the TraderExportJobObject enum.

type TraderExportPnlWatermark added in v0.4.0

type TraderExportPnlWatermark struct {
	Coverage   string    `json:"coverage"`
	ObservedAt time.Time `json:"observed_at"`
	Revision   int64     `json:"revision"`
	Source     string    `json:"source"`
}

TraderExportPnlWatermark defines model for TraderExportPnlWatermark.

type TraderExportPositionWatermark added in v0.4.0

type TraderExportPositionWatermark struct {
	Coverage   string    `json:"coverage"`
	DataAsOf   time.Time `json:"data_as_of"`
	Generation int64     `json:"generation"`
	Source     string    `json:"source"`
}

TraderExportPositionWatermark defines model for TraderExportPositionWatermark.

type TraderExportSnapshot

type TraderExportSnapshot struct {
	Address           string                     `json:"address"`
	Completeness      ExportCompleteness         `json:"completeness"`
	Counts            ExportCounts               `json:"counts"`
	GeneratedAt       time.Time                  `json:"generated_at"`
	LargeExportPolicy LargeExportPolicy          `json:"large_export_policy"`
	Reconciliation    ExportVolumeReconciliation `json:"reconciliation"`
	SourceRange       ExportSourceRange          `json:"source_range"`
}

TraderExportSnapshot defines model for TraderExportSnapshot.

type TraderExportSourceWatermarks added in v0.4.0

type TraderExportSourceWatermarks struct {
	Categories TraderExportCategoryWatermark `json:"categories"`
	Pnl        TraderExportPnlWatermark      `json:"pnl"`
	Positions  TraderExportPositionWatermark `json:"positions"`
	Trades     TraderExportTradeWatermark    `json:"trades"`
}

TraderExportSourceWatermarks defines model for TraderExportSourceWatermarks.

type TraderExportTradeWatermark added in v0.4.0

type TraderExportTradeWatermark struct {
	Coverage          string             `json:"coverage"`
	FirstActivityDate openapi_types.Date `json:"first_activity_date"`
	Rows              int64              `json:"rows"`
	Source            string             `json:"source"`
}

TraderExportTradeWatermark defines model for TraderExportTradeWatermark.

type TraderGrade

type TraderGrade string

TraderGrade defines model for Trader.Grade.

const (
	TraderGradeA TraderGrade = "A"
	TraderGradeB TraderGrade = "B"
	TraderGradeC TraderGrade = "C"
	TraderGradeD TraderGrade = "D"
	TraderGradeF TraderGrade = "F"
	TraderGradeS TraderGrade = "S"
)

Defines values for TraderGrade.

func (TraderGrade) Valid

func (e TraderGrade) Valid() bool

Valid indicates whether the value is a known member of the TraderGrade enum.

type TraderGradeAt added in v0.4.0

type TraderGradeAt struct {
	// Address Resolved wallet address, lowercased.
	Address string `json:"address"`

	// AsOf Requested event or decision time.
	AsOf time.Time `json:"as_of"`

	// AvailableFrom First proven visibility instant for this trader. Null when no observation exists. Earlier times remain unknown.
	AvailableFrom time.Time `json:"available_from"`

	// Grade Grade only when status is graded; null otherwise.
	Grade TraderGradeAtGrade `json:"grade"`

	// Id Prefixed trader id (trd_<wallet>).
	Id string `json:"id"`

	// Observation Proof row when status is graded or ungraded. Null when history is unknown.
	Observation struct {
		// Id Immutable grade_forward_history observation id.
		Id int64 `json:"id"`

		// ModelBuildSha Exact writer build SHA when recorded. Null on old and non-model observations.
		ModelBuildSha string `json:"model_build_sha"`

		// ModelVersion Writer-proven model family, such as grading-v4. Null when unknown.
		ModelVersion string `json:"model_version"`

		// ObservedAt Lower bound: the grade writer had started the transition at this instant.
		ObservedAt time.Time `json:"observed_at"`

		// PreviousObservationId Previous immutable observation id when retained. A later grade change supersedes that observation but never erases it; this link does not assert why the grade changed.
		PreviousObservationId int64 `json:"previous_observation_id"`

		// PublishedBy Upper bound: a later snapshot confirmed the observation was committed. This is not an exact commit timestamp.
		PublishedBy time.Time `json:"published_by"`

		// SourceObservedBy Database-clock upper bound on when the grading pass read its cohort inputs. Not the event time or source freshness of every input; null when unknown.
		SourceObservedBy time.Time `json:"source_observed_by"`
	} `json:"observation"`

	// Status graded has a proven grade; ungraded is a proven null grade; unknown has no valid historical observation.
	Status TraderGradeAtStatus `json:"status"`
}

TraderGradeAt defines model for TraderGradeAt.

type TraderGradeAtGrade added in v0.4.0

type TraderGradeAtGrade string

TraderGradeAtGrade Grade only when status is graded; null otherwise.

const (
	TraderGradeAtGradeA TraderGradeAtGrade = "A"
	TraderGradeAtGradeB TraderGradeAtGrade = "B"
	TraderGradeAtGradeC TraderGradeAtGrade = "C"
	TraderGradeAtGradeD TraderGradeAtGrade = "D"
	TraderGradeAtGradeF TraderGradeAtGrade = "F"
	TraderGradeAtGradeS TraderGradeAtGrade = "S"
)

Defines values for TraderGradeAtGrade.

func (TraderGradeAtGrade) Valid added in v0.4.0

func (e TraderGradeAtGrade) Valid() bool

Valid indicates whether the value is a known member of the TraderGradeAtGrade enum.

type TraderGradeAtStatus added in v0.4.0

type TraderGradeAtStatus string

TraderGradeAtStatus graded has a proven grade; ungraded is a proven null grade; unknown has no valid historical observation.

const (
	TraderGradeAtStatusGraded   TraderGradeAtStatus = "graded"
	TraderGradeAtStatusUngraded TraderGradeAtStatus = "ungraded"
	TraderGradeAtStatusUnknown  TraderGradeAtStatus = "unknown"
)

Defines values for TraderGradeAtStatus.

func (TraderGradeAtStatus) Valid added in v0.4.0

func (e TraderGradeAtStatus) Valid() bool

Valid indicates whether the value is a known member of the TraderGradeAtStatus enum.

type TraderPnl

type TraderPnl struct {
	// Drawdown Underwater (drawdown) series. Present unless the request's `sections` excluded it, and clipped to `from`/`to` when either is set. The running peak behind each point is the full-history peak, so a clipped slice is not rebased; view.anchor.drawdown carries the value at the point before the window.
	Drawdown *[]struct {
		CumulativeProfit float32            `json:"cumulative_profit"`
		Date             openapi_types.Date `json:"date"`
		Drawdown         float32            `json:"drawdown"`
	} `json:"drawdown,omitempty"`

	// Entries Daily cumulative-P&L series (oldest-first). Present unless the request's `sections` excluded it, and clipped to `from`/`to` when either is set. cumulative_profit and total_pnl stay cumulative from the start of the stored history, so a clipped slice keeps the same economic meaning; view.anchor carries the point before the window.
	Entries *[]struct {
		CumulativeProfit *float32           `json:"cumulative_profit,omitempty"`
		DailyChange      float32            `json:"daily_change"`
		Date             openapi_types.Date `json:"date"`
		MarketsTraded    *int               `json:"markets_traded,omitempty"`
		TotalPnl         *float32           `json:"total_pnl,omitempty"`
		TotalVolume      *float32           `json:"total_volume,omitempty"`
	} `json:"entries,omitempty"`

	// FreshnessAt RFC3339 served-freshness clock for this trader's PnL history = traders.daily_pnl_recomputed_at, when the daily_pnl read model this response is served from was last rebuilt; null when it has never been recomputed for the trader. Always present, so read it as a value that can be null rather than a key that can be missing.
	FreshnessAt time.Time `json:"freshness_at"`

	// Id Prefixed trader ID (`trd_...`).
	Id string `json:"id"`

	// Monthly Per-month P&L aggregation. Present unless the request's `sections` excluded it. Whole months over the full stored history, never clipped to `from`/`to`, so a month is never a partial month.
	Monthly *[]struct {
		MarketsTraded int     `json:"markets_traded"`
		Month         int     `json:"month"`
		Pnl           float32 `json:"pnl"`
		Year          int     `json:"year"`
	} `json:"monthly,omitempty"`

	// Stats Pre-derived period stats. Present unless the request's `sections` excluded it. Always the published all/90d/30d/7d windows over the full stored history; `from`/`to` never recompute them over the request's range.
	Stats *struct {
		All struct {
			AvgDay       float32             `json:"avg_day"`
			BestDay      float32             `json:"best_day"`
			BestDayDate  *openapi_types.Date `json:"best_day_date,omitempty"`
			Change       float32             `json:"change"`
			ChangePct    float32             `json:"change_pct"`
			Current      float32             `json:"current"`
			LossDays     int                 `json:"loss_days"`
			RebaseAnchor float32             `json:"rebase_anchor"`
			WinDays      int                 `json:"win_days"`
			WorstDay     float32             `json:"worst_day"`
			WorstDayDate *openapi_types.Date `json:"worst_day_date,omitempty"`
		} `json:"all"`
		D30 struct {
			AvgDay       float32             `json:"avg_day"`
			BestDay      float32             `json:"best_day"`
			BestDayDate  *openapi_types.Date `json:"best_day_date,omitempty"`
			Change       float32             `json:"change"`
			ChangePct    float32             `json:"change_pct"`
			Current      float32             `json:"current"`
			LossDays     int                 `json:"loss_days"`
			RebaseAnchor float32             `json:"rebase_anchor"`
			WinDays      int                 `json:"win_days"`
			WorstDay     float32             `json:"worst_day"`
			WorstDayDate *openapi_types.Date `json:"worst_day_date,omitempty"`
		} `json:"d30"`
		D7 struct {
			AvgDay       float32             `json:"avg_day"`
			BestDay      float32             `json:"best_day"`
			BestDayDate  *openapi_types.Date `json:"best_day_date,omitempty"`
			Change       float32             `json:"change"`
			ChangePct    float32             `json:"change_pct"`
			Current      float32             `json:"current"`
			LossDays     int                 `json:"loss_days"`
			RebaseAnchor float32             `json:"rebase_anchor"`
			WinDays      int                 `json:"win_days"`
			WorstDay     float32             `json:"worst_day"`
			WorstDayDate *openapi_types.Date `json:"worst_day_date,omitempty"`
		} `json:"d7"`
		D90 struct {
			AvgDay       float32             `json:"avg_day"`
			BestDay      float32             `json:"best_day"`
			BestDayDate  *openapi_types.Date `json:"best_day_date,omitempty"`
			Change       float32             `json:"change"`
			ChangePct    float32             `json:"change_pct"`
			Current      float32             `json:"current"`
			LossDays     int                 `json:"loss_days"`
			RebaseAnchor float32             `json:"rebase_anchor"`
			WinDays      int                 `json:"win_days"`
			WorstDay     float32             `json:"worst_day"`
			WorstDayDate *openapi_types.Date `json:"worst_day_date,omitempty"`
		} `json:"d90"`
	} `json:"stats,omitempty"`

	// View Representation parameters applied to this body. Present only when the request sent `from`, `to` or `sections`; omitted otherwise, which is what keeps a no-parameter response identical to the one this route served before the parameters existed.
	View *struct {
		// Anchor The last daily point strictly before `from`: the cumulative baseline the window was cut away from. null when the request set no lower bound, or when the window starts at or before the first stored point and the slice already begins at the start of the history. Cumulative values in `entries` and `drawdown` are never rebased to the window, so this is the figure to subtract for a window-relative change.
		Anchor struct {
			// CumulativeProfit Cumulative profit carried into the window; null when the stored point has none, the same nullability entries[].cumulative_profit has.
			CumulativeProfit float32            `json:"cumulative_profit"`
			Date             openapi_types.Date `json:"date"`

			// Drawdown Underwater value at the anchor date; null when that date has no drawdown point, which happens exactly when its cumulative_profit is null. The running peak behind the window is cumulative_profit minus drawdown (drawdown is zero or negative).
			Drawdown float32 `json:"drawdown"`

			// TotalPnl Cumulative total P&L carried into the window; null on the same terms.
			TotalPnl float32 `json:"total_pnl"`
		} `json:"anchor"`

		// EntriesInWindow Points of the daily series inside the window. Equal to entries_total when no bound narrowed it, and reported whether or not entries was among the requested sections.
		EntriesInWindow int `json:"entries_in_window"`

		// EntriesTotal Points in the full stored daily series, before the window. Compare with entries_in_window to tell a clipped chart from a wallet that really has that many days.
		EntriesTotal int `json:"entries_total"`

		// From Inclusive UTC lower bound applied to the daily series; null when the request left the series unbounded below.
		From openapi_types.Date `json:"from"`

		// Sections Sections this body carries, in the order the object publishes them, whatever order the query listed.
		Sections []TraderPnlViewSections `json:"sections"`

		// To Inclusive UTC upper bound applied to the daily series; null when the request left the series unbounded above.
		To openapi_types.Date `json:"to"`
	} `json:"view,omitempty"`

	// YearTotals Per-year P&L totals (ascending by year). Present unless the request's `sections` excluded it. Whole years over the full stored history, never clipped to `from`/`to`.
	YearTotals *[]struct {
		Pnl  float32 `json:"pnl"`
		Year int     `json:"year"`
	} `json:"year_totals,omitempty"`
}

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.

type TraderPnlExact added in v0.4.0

type TraderPnlExact struct {
	// Realized Native Polymarket realized P&L plus credited maker and taker rebates, with fees included, from the trusted matching `trader_trading_pnl.net_realized_pnl` snapshot.
	Realized ExactDecimal `json:"realized"`
}

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

type TraderPnlViewSections added in v0.4.0

type TraderPnlViewSections string

TraderPnlViewSections defines model for TraderPnl.View.Sections.

const (
	TraderPnlViewSectionsDrawdown   TraderPnlViewSections = "drawdown"
	TraderPnlViewSectionsEntries    TraderPnlViewSections = "entries"
	TraderPnlViewSectionsMonthly    TraderPnlViewSections = "monthly"
	TraderPnlViewSectionsStats      TraderPnlViewSections = "stats"
	TraderPnlViewSectionsYearTotals TraderPnlViewSections = "year_totals"
)

Defines values for TraderPnlViewSections.

func (TraderPnlViewSections) Valid added in v0.4.0

func (e TraderPnlViewSections) Valid() bool

Valid indicates whether the value is a known member of the TraderPnlViewSections enum.

type TraderStatsExact added in v0.4.0

type TraderStatsExact struct {
	// TotalVolume Full-history both-sides Polymarket user-volume atom from the verified `trader_usd_volume` observation.
	TotalVolume ExactDecimal `json:"total_volume"`
}

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

type TraderStreakTier

type TraderStreakTier string

TraderStreakTier Hot-streak tier (trailing-7d cross-sectional percentile); a separate axis from the all-time grade. Omitted when there is no recent activity.

const (
	TraderStreakTierCold    TraderStreakTier = "cold"
	TraderStreakTierCooling TraderStreakTier = "cooling"
	TraderStreakTierHot     TraderStreakTier = "hot"
	TraderStreakTierNeutral TraderStreakTier = "neutral"
	TraderStreakTierRising  TraderStreakTier = "rising"
)

Defines values for TraderStreakTier.

func (TraderStreakTier) Valid

func (e TraderStreakTier) Valid() bool

Valid indicates whether the value is a known member of the TraderStreakTier enum.

type TraderTrust

type TraderTrust struct {
	// CategoryRecords 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.
	CategoryRecords TrustMetadata `json:"category_records"`

	// CategorySkillModel 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.
	CategorySkillModel TrustMetadata `json:"category_skill_model"`

	// CategoryStrengths 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.
	CategoryStrengths TrustMetadata `json:"category_strengths"`

	// DailyWinRate 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.
	DailyWinRate TrustMetadata `json:"daily_win_rate"`

	// ForecastEvidence 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.
	ForecastEvidence TrustMetadata `json:"forecast_evidence"`

	// ForecastScore 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.
	ForecastScore TrustMetadata `json:"forecast_score"`

	// Grade 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.
	Grade TrustMetadata `json:"grade"`

	// LastActive 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.
	LastActive TrustMetadata `json:"last_active"`

	// MarketsTraded 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.
	MarketsTraded TrustMetadata `json:"markets_traded"`

	// QuantMetrics 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.
	QuantMetrics TrustMetadata `json:"quant_metrics"`

	// Rank 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.
	Rank TrustMetadata `json:"rank"`

	// RealizedPnl 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.
	RealizedPnl TrustMetadata `json:"realized_pnl"`

	// Score 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.
	Score TrustMetadata `json:"score"`

	// Strategy 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.
	Strategy TrustMetadata `json:"strategy"`

	// StreakTier 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.
	StreakTier TrustMetadata `json:"streak_tier"`

	// SyncStatus 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.
	SyncStatus TrustMetadata `json:"sync_status"`

	// SyncedAt 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.
	SyncedAt TrustMetadata `json:"synced_at"`

	// TotalPnl 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.
	TotalPnl TrustMetadata `json:"total_pnl"`

	// TotalVolume 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.
	TotalVolume TrustMetadata `json:"total_volume"`

	// UnrealizedPnl 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.
	UnrealizedPnl TrustMetadata `json:"unrealized_pnl"`

	// WinRate 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.
	WinRate TrustMetadata `json:"win_rate"`
}

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

type TrendingWallet

type TrendingWallet struct {
	Address       string   `json:"address"`
	AllTimePnlUsd *float32 `json:"all_time_pnl_usd,omitempty"`
	AllTimeScore  *float32 `json:"all_time_score,omitempty"`

	// DailyPnlSeries Shape-only daily P&L sparkline across the window, derived from Polymarket's documented user-pnl cumulative curve (GET /v2/user-pnl) converted to per-day deltas. It conveys the trend of the curve only and is NOT guaranteed to sum to trending_pnl_usd, which is the canonical leaderboard total.
	DailyPnlSeries []struct {
		Date   openapi_types.Date `json:"date"`
		PnlUsd float32            `json:"pnl_usd"`
	} `json:"daily_pnl_series"`

	// Grade All-time trader grade; a separate axis from streak_tier. Led by realized profit (the money actually banked, about 95 percent of the grade), with forecasting calibration, risk-adjusted returns, and consistency as the tie-breaker and proven-trader guardrails: any grade above C requires verified net-positive realized profit, and the top grades also require a real resolved-market track record plus a survivable drawdown. Relative, so it drifts as the cohort moves. Omitted when the trader is Unranked (fewer than 5 markets, or too little verified record to cohort-rank).
	Grade *TrendingWalletGrade `json:"grade,omitempty"`

	// Id Prefixed trader ID (`trd_...`).
	Id         string     `json:"id"`
	LastSynced *time.Time `json:"last_synced,omitempty"`

	// Platform Real provider platform; surfaced, never coerced. Polymarket only.
	Platform TrendingWalletPlatform `json:"platform"`

	// ProfileImageUrl Official Polymarket avatar URL (profileImage).
	ProfileImageUrl *string `json:"profile_image_url,omitempty"`

	// Rank 1-based rank within the full ranked set (stable across pages).
	Rank int `json:"rank"`

	// StreakTier Hot-streak tier (trailing-7d cross-sectional percentile). Omitted when there is no recent activity.
	StreakTier *TrendingWalletStreakTier `json:"streak_tier,omitempty"`

	// TrendingPnlUsd Polymarket weekly/monthly P&L for the wallet in USD, taken from Polymarket's canonical leaderboard (data-api.polymarket.com/v2/leaderboard?time_period=week|month&sort_by=PNL). This is the ranking axis and the rows are returned in Polymarket's by-PNL order; it is the provider's number, not a locally summed realized-leaf total.
	TrendingPnlUsd      float32 `json:"trending_pnl_usd"`
	Username            *string `json:"username,omitempty"`
	WindowMarketsTraded int     `json:"window_markets_traded"`

	// WindowTradeDays Distinct in-window UTC trade days from our trades (0 if the winner is not in our DB).
	WindowTradeDays int `json:"window_trade_days"`

	// WindowVolumeShares Both-sides traded volume over the window in SHARES, from the Polymarket leaderboard row, whose own schema states the figure is never USD. Omitted when the row carried none.
	WindowVolumeShares *float32 `json:"window_volume_shares,omitempty"`

	// WindowVolumeUsd Both-sides cash volume over the window in USD, from Polymarket GET /v2/user-volume (volume_usdc). Omitted when Polymarket served no volume for the wallet: an absent observation, never zero. Polymarket tracks volume in whole UTC days, so this window is the whole-day span covering the requested one, which is not the exact span trending_pnl_usd was scored over.
	WindowVolumeUsd *float32 `json:"window_volume_usd,omitempty"`
}

TrendingWallet defines model for TrendingWallet.

type TrendingWalletGrade

type TrendingWalletGrade string

TrendingWalletGrade All-time trader grade; a separate axis from streak_tier. Led by realized profit (the money actually banked, about 95 percent of the grade), with forecasting calibration, risk-adjusted returns, and consistency as the tie-breaker and proven-trader guardrails: any grade above C requires verified net-positive realized profit, and the top grades also require a real resolved-market track record plus a survivable drawdown. Relative, so it drifts as the cohort moves. Omitted when the trader is Unranked (fewer than 5 markets, or too little verified record to cohort-rank).

const (
	TrendingWalletGradeA TrendingWalletGrade = "A"
	TrendingWalletGradeB TrendingWalletGrade = "B"
	TrendingWalletGradeC TrendingWalletGrade = "C"
	TrendingWalletGradeD TrendingWalletGrade = "D"
	TrendingWalletGradeF TrendingWalletGrade = "F"
	TrendingWalletGradeS TrendingWalletGrade = "S"
)

Defines values for TrendingWalletGrade.

func (TrendingWalletGrade) Valid

func (e TrendingWalletGrade) Valid() bool

Valid indicates whether the value is a known member of the TrendingWalletGrade enum.

type TrendingWalletPlatform

type TrendingWalletPlatform string

TrendingWalletPlatform Real provider platform; surfaced, never coerced. Polymarket only.

const (
	TrendingWalletPlatformPolymarket TrendingWalletPlatform = "polymarket"
)

Defines values for TrendingWalletPlatform.

func (TrendingWalletPlatform) Valid

func (e TrendingWalletPlatform) Valid() bool

Valid indicates whether the value is a known member of the TrendingWalletPlatform enum.

type TrendingWalletStreakTier

type TrendingWalletStreakTier string

TrendingWalletStreakTier Hot-streak tier (trailing-7d cross-sectional percentile). Omitted when there is no recent activity.

const (
	TrendingWalletStreakTierCold    TrendingWalletStreakTier = "cold"
	TrendingWalletStreakTierCooling TrendingWalletStreakTier = "cooling"
	TrendingWalletStreakTierHot     TrendingWalletStreakTier = "hot"
	TrendingWalletStreakTierNeutral TrendingWalletStreakTier = "neutral"
	TrendingWalletStreakTierRising  TrendingWalletStreakTier = "rising"
)

Defines values for TrendingWalletStreakTier.

func (TrendingWalletStreakTier) Valid

func (e TrendingWalletStreakTier) Valid() bool

Valid indicates whether the value is a known member of the TrendingWalletStreakTier enum.

type TrustCompleteness

type TrustCompleteness struct {
	Detail *string                 `json:"detail,omitempty"`
	Status TrustCompletenessStatus `json:"status"`
}

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

type TrustCompletenessStatus

type TrustCompletenessStatus string

TrustCompletenessStatus defines model for TrustCompleteness.Status.

const (
	TrustCompletenessStatusComplete      TrustCompletenessStatus = "complete"
	TrustCompletenessStatusNotApplicable TrustCompletenessStatus = "not_applicable"
	TrustCompletenessStatusNotComputed   TrustCompletenessStatus = "not_computed"
	TrustCompletenessStatusPartial       TrustCompletenessStatus = "partial"
	TrustCompletenessStatusUnavailable   TrustCompletenessStatus = "unavailable"
)

Defines values for TrustCompletenessStatus.

func (TrustCompletenessStatus) Valid

func (e TrustCompletenessStatus) Valid() bool

Valid indicates whether the value is a known member of the TrustCompletenessStatus enum.

type TrustFreshness

type TrustFreshness struct {
	AsOf    *time.Time           `json:"as_of,omitempty"`
	MaxAgeS *int                 `json:"max_age_s,omitempty"`
	Status  TrustFreshnessStatus `json:"status"`
}

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

type TrustFreshnessStatus

type TrustFreshnessStatus string

TrustFreshnessStatus defines model for TrustFreshness.Status.

const (
	TrustFreshnessStatusFresh       TrustFreshnessStatus = "fresh"
	TrustFreshnessStatusNotLive     TrustFreshnessStatus = "not_live"
	TrustFreshnessStatusRefreshing  TrustFreshnessStatus = "refreshing"
	TrustFreshnessStatusStale       TrustFreshnessStatus = "stale"
	TrustFreshnessStatusUnavailable TrustFreshnessStatus = "unavailable"
	TrustFreshnessStatusUnknown     TrustFreshnessStatus = "unknown"
)

Defines values for TrustFreshnessStatus.

func (TrustFreshnessStatus) Valid

func (e TrustFreshnessStatus) Valid() bool

Valid indicates whether the value is a known member of the TrustFreshnessStatus enum.

type TrustMetadata

type TrustMetadata struct {
	// Completeness Whether the described value or result set is complete for its stated contract.
	Completeness TrustCompleteness `json:"completeness"`

	// Freshness Freshness metadata for a trust-critical value. This is separate from transport cache fields in ResponseMeta.
	Freshness TrustFreshness `json:"freshness"`

	// Reconciliation How provider-owned facts were reconciled with stored/read-model values.
	Reconciliation TrustReconciliation `json:"reconciliation"`

	// Source 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.
	Source TrustSource `json:"source"`
}

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.

type TrustReconciliation

type TrustReconciliation struct {
	Detail *string                   `json:"detail,omitempty"`
	Status TrustReconciliationStatus `json:"status"`
}

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

type TrustReconciliationStatus

type TrustReconciliationStatus string

TrustReconciliationStatus defines model for TrustReconciliation.Status.

const (
	TrustReconciliationStatusComputed       TrustReconciliationStatus = "computed"
	TrustReconciliationStatusDbMirror       TrustReconciliationStatus = "db_mirror"
	TrustReconciliationStatusNotApplicable  TrustReconciliationStatus = "not_applicable"
	TrustReconciliationStatusPartial        TrustReconciliationStatus = "partial"
	TrustReconciliationStatusProviderBacked TrustReconciliationStatus = "provider_backed"
	TrustReconciliationStatusUnavailable    TrustReconciliationStatus = "unavailable"
)

Defines values for TrustReconciliationStatus.

func (TrustReconciliationStatus) Valid

func (e TrustReconciliationStatus) Valid() bool

Valid indicates whether the value is a known member of the TrustReconciliationStatus enum.

type TrustSource

type TrustSource struct {
	// Field Provider field, DB column, or computed field name when applicable.
	Field *string         `json:"field,omitempty"`
	Kind  TrustSourceKind `json:"kind"`

	// Owner Provider, table/read-model, cache, or service that owns the value.
	Owner string `json:"owner"`
}

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.

type TrustSourceKind

type TrustSourceKind string

TrustSourceKind defines model for TrustSource.Kind.

const (
	TrustSourceKindCache       TrustSourceKind = "cache"
	TrustSourceKindClientInput TrustSourceKind = "client_input"
	TrustSourceKindComputed    TrustSourceKind = "computed"
	TrustSourceKindDatabase    TrustSourceKind = "database"
	TrustSourceKindProvider    TrustSourceKind = "provider"
	TrustSourceKindUnavailable TrustSourceKind = "unavailable"
)

Defines values for TrustSourceKind.

func (TrustSourceKind) Valid

func (e TrustSourceKind) Valid() bool

Valid indicates whether the value is a known member of the TrustSourceKind enum.

type UpdateWebhook200JSONResponseBodyObject

type UpdateWebhook200JSONResponseBodyObject string

UpdateWebhook200JSONResponseBodyObject defines parameters for UpdateWebhook.

const (
	UpdateWebhook200JSONResponseBodyObjectWebhook UpdateWebhook200JSONResponseBodyObject = "webhook"
)

Defines values for UpdateWebhook200JSONResponseBodyObject.

func (UpdateWebhook200JSONResponseBodyObject) Valid

Valid indicates whether the value is a known member of the UpdateWebhook200JSONResponseBodyObject enum.

type UpdateWebhookJSONRequestBody

type UpdateWebhookJSONRequestBody = UpdateWebhookRequest

UpdateWebhookJSONRequestBody defines body for UpdateWebhook for application/json ContentType.

type UpdateWebhookParams

type UpdateWebhookParams struct {
	// XQueryValidation Opt into strict query-name validation. The default is compatible: unknown names are ignored and reported in X-Query-Ignored. With strict, an unknown name returns 400 bad_request with error.reason unknown_query_parameter before the handler runs, including when its percent escape is incomplete.
	XQueryValidation *UpdateWebhookParamsXQueryValidation `json:"X-Query-Validation,omitempty"`

	// IdempotencyKey Optional safe-retry key. Reuse the same value only when retrying the exact same mutation request body; a different body returns 422 and an in-flight matching request returns 409.
	IdempotencyKey *string `json:"Idempotency-Key,omitempty"`
}

UpdateWebhookParams defines parameters for UpdateWebhook.

type UpdateWebhookParamsXQueryValidation added in v0.3.0

type UpdateWebhookParamsXQueryValidation string

UpdateWebhookParamsXQueryValidation defines parameters for UpdateWebhook.

const (
	UpdateWebhookParamsXQueryValidationStrict UpdateWebhookParamsXQueryValidation = "strict"
)

Defines values for UpdateWebhookParamsXQueryValidation.

func (UpdateWebhookParamsXQueryValidation) Valid added in v0.3.0

Valid indicates whether the value is a known member of the UpdateWebhookParamsXQueryValidation enum.

type UpdateWebhookRequest

type UpdateWebhookRequest struct {
	Enabled    *bool               `json:"enabled,omitempty"`
	EventTypes *[]WebhookEventType `json:"event_types,omitempty"`
	Name       *string             `json:"name,omitempty"`

	// TradeFilters 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.
	TradeFilters *LargeTradeSubscriptionFilters `json:"trade_filters,omitempty"`

	// Url Replacement public HTTPS callback URL on the default port 443, validated and checked for uniqueness exactly like the create url. HTTPS scheme/host case, trailing DNS dots and port 443 normalize; path/query case is preserved. Changing it resets status to pending_verification and returns a new verification token; the new destination must pass the verification challenge before deliveries resume.
	Url *string `json:"url,omitempty"`
}

UpdateWebhookRequest defines model for UpdateWebhookRequest.

type UpdateWebhookResponse

type UpdateWebhookResponse struct {
	Body         []byte
	HTTPResponse *http.Response
	// JSON200 the response for an HTTP 200 `application/json` response
	JSON200 *struct {
		Data   WebhookEndpoint                        `json:"data"`
		Meta   ResponseMeta                           `json:"meta"`
		Object UpdateWebhook200JSONResponseBodyObject `json:"object"`
	}
	// JSON400 the response for an HTTP 400 `application/json` response
	JSON400 *ApiError
	// JSON401 the response for an HTTP 401 `application/json` response
	JSON401 *ApiError
	// JSON402 the response for an HTTP 402 `application/json` response
	JSON402 *ApiError
	// JSON403 the response for an HTTP 403 `application/json` response
	JSON403 *ApiError
	// JSON404 the response for an HTTP 404 `application/json` response
	JSON404 *ApiError
	// JSON408 the response for an HTTP 408 `application/json` response
	JSON408 *ApiError
	// JSON409 the response for an HTTP 409 `application/json` response
	JSON409 *ApiError
	// JSON413 the response for an HTTP 413 `application/json` response
	JSON413 *ApiError
	// JSON415 the response for an HTTP 415 `application/json` response
	JSON415 *ApiError
	// JSON422 the response for an HTTP 422 `application/json` response
	JSON422 *ApiError
	// JSON423 the response for an HTTP 423 `application/json` response
	JSON423 *ApiError
	// JSON429 the response for an HTTP 429 `application/json` response
	JSON429 *ApiError
	// JSON500 the response for an HTTP 500 `application/json` response
	JSON500 *ApiError
	// JSON503 the response for an HTTP 503 `application/json` response
	JSON503 *ApiError
	// Headers200 the parsed response headers for an HTTP 200 response
	Headers200 *UpdateWebhookResponse200Headers
	// Headers429 the parsed response headers for an HTTP 429 response
	Headers429 *UpdateWebhookResponse429Headers
	// Headers503 the parsed response headers for an HTTP 503 response
	Headers503 *UpdateWebhookResponse503Headers
}

func ParseUpdateWebhookResponse

func ParseUpdateWebhookResponse(rsp *http.Response) (*UpdateWebhookResponse, error)

ParseUpdateWebhookResponse parses an HTTP response from a UpdateWebhookWithResponse call

func (UpdateWebhookResponse) ContentType

func (r UpdateWebhookResponse) ContentType() string

ContentType is a convenience method to retrieve the Content-Type value from the HTTP response headers

func (UpdateWebhookResponse) GetBody

func (r UpdateWebhookResponse) GetBody() []byte

GetBody returns the raw response body bytes

func (UpdateWebhookResponse) GetJSON200

func (r UpdateWebhookResponse) GetJSON200() *struct {
	Data   WebhookEndpoint                        `json:"data"`
	Meta   ResponseMeta                           `json:"meta"`
	Object UpdateWebhook200JSONResponseBodyObject `json:"object"`
}

GetJSON200 returns the response for an HTTP 200 `application/json` response

func (UpdateWebhookResponse) GetJSON400

func (r UpdateWebhookResponse) GetJSON400() *ApiError

GetJSON400 returns the response for an HTTP 400 `application/json` response

func (UpdateWebhookResponse) GetJSON401

func (r UpdateWebhookResponse) GetJSON401() *ApiError

GetJSON401 returns the response for an HTTP 401 `application/json` response

func (UpdateWebhookResponse) GetJSON402

func (r UpdateWebhookResponse) GetJSON402() *ApiError

GetJSON402 returns the response for an HTTP 402 `application/json` response

func (UpdateWebhookResponse) GetJSON403

func (r UpdateWebhookResponse) GetJSON403() *ApiError

GetJSON403 returns the response for an HTTP 403 `application/json` response

func (UpdateWebhookResponse) GetJSON404

func (r UpdateWebhookResponse) GetJSON404() *ApiError

GetJSON404 returns the response for an HTTP 404 `application/json` response

func (UpdateWebhookResponse) GetJSON408 added in v0.2.0

func (r UpdateWebhookResponse) GetJSON408() *ApiError

GetJSON408 returns the response for an HTTP 408 `application/json` response

func (UpdateWebhookResponse) GetJSON409

func (r UpdateWebhookResponse) GetJSON409() *ApiError

GetJSON409 returns the response for an HTTP 409 `application/json` response

func (UpdateWebhookResponse) GetJSON413 added in v0.2.0

func (r UpdateWebhookResponse) GetJSON413() *ApiError

GetJSON413 returns the response for an HTTP 413 `application/json` response

func (UpdateWebhookResponse) GetJSON415 added in v0.2.0

func (r UpdateWebhookResponse) GetJSON415() *ApiError

GetJSON415 returns the response for an HTTP 415 `application/json` response

func (UpdateWebhookResponse) GetJSON422

func (r UpdateWebhookResponse) GetJSON422() *ApiError

GetJSON422 returns the response for an HTTP 422 `application/json` response

func (UpdateWebhookResponse) GetJSON423

func (r UpdateWebhookResponse) GetJSON423() *ApiError

GetJSON423 returns the response for an HTTP 423 `application/json` response

func (UpdateWebhookResponse) GetJSON429

func (r UpdateWebhookResponse) GetJSON429() *ApiError

GetJSON429 returns the response for an HTTP 429 `application/json` response

func (UpdateWebhookResponse) GetJSON500

func (r UpdateWebhookResponse) GetJSON500() *ApiError

GetJSON500 returns the response for an HTTP 500 `application/json` response

func (UpdateWebhookResponse) GetJSON503

func (r UpdateWebhookResponse) GetJSON503() *ApiError

GetJSON503 returns the response for an HTTP 503 `application/json` response

func (UpdateWebhookResponse) Status

func (r UpdateWebhookResponse) Status() string

Status returns HTTPResponse.Status

func (UpdateWebhookResponse) StatusCode

func (r UpdateWebhookResponse) StatusCode() int

StatusCode returns HTTPResponse.StatusCode

type UpdateWebhookResponse200Headers

type UpdateWebhookResponse200Headers struct {
	RateLimitLimit      *int
	RateLimitRemaining  *int
	RateLimitReset      *int
	ServerTiming        *string
	XEffectiveQuery     *string
	XQueryIgnored       *string
	XRateLimitLimit     *int
	XRateLimitRemaining *int
	XRateLimitReset     *int
	XRequestId          *string
	XUsageAccounting    *string
}

UpdateWebhookResponse200Headers the declared response headers of an HTTP 200 response for UpdateWebhook

type UpdateWebhookResponse429Headers

type UpdateWebhookResponse429Headers struct {
	RateLimitLimit      *int
	RateLimitRemaining  *int
	RateLimitReset      *int
	RetryAfter          *int
	XRateLimitLimit     *int
	XRateLimitRemaining *int
	XRateLimitReset     *int
	XRequestId          *string
}

UpdateWebhookResponse429Headers the declared response headers of an HTTP 429 response for UpdateWebhook

type UpdateWebhookResponse503Headers

type UpdateWebhookResponse503Headers struct {
	RetryAfter *int
	XRequestId *string
}

UpdateWebhookResponse503Headers the declared response headers of an HTTP 503 response for UpdateWebhook

type Usage

type Usage struct {
	Data struct {
		// DailyUsage UTC-day usage count. Current V1 has no daily hard cap, so limit and remaining are null rather than synthesized.
		DailyUsage struct {
			Limit         *int `json:"limit"`
			Remaining     *int `json:"remaining"`
			ResetAt       int  `json:"reset_at"`
			Used          int  `json:"used"`
			WindowSeconds int  `json:"window_seconds"`
		} `json:"daily_usage"`

		// MonthlyQuota The monthly request quota (#16111): where the account stands against the requests Pro includes per UTC calendar month. Reading it here spends nothing. null only when the month's count could not be read for this response.
		MonthlyQuota *struct {
			// Binding Whether requests over this account's ceiling are refused right now: false before enforced_from and for an admin account.
			Binding bool `json:"binding"`

			// Ceiling The most requests this account is admitted in a UTC calendar month once enforcement has begun: limit, or 1,000,000 with pay as you go on. null for an admin account, which no number stops. Additive since 2026-09-22.
			Ceiling *int `json:"ceiling"`

			// EnforcedFrom Unix seconds: from when request limit + 1 is refused for an account the quota binds.
			EnforcedFrom int `json:"enforced_from"`

			// Limit Requests Pro includes per UTC calendar month.
			Limit int `json:"limit"`

			// PayAsYouGo Pay as you go is on: requests over the quota keep answering and bill on a monthly invoice, up to ceiling.
			PayAsYouGo bool `json:"pay_as_you_go"`
			Remaining  int  `json:"remaining"`

			// ResetAt Unix seconds: the first instant of the next UTC calendar month.
			ResetAt int `json:"reset_at"`

			// Used Admitted requests so far this UTC calendar month.
			Used int `json:"used"`
		} `json:"monthly_quota"`
		RateLimit struct {
			Limit         int `json:"limit"`
			Remaining     int `json:"remaining"`
			ResetAt       int `json:"reset_at"`
			Used          int `json:"used"`
			WindowSeconds int `json:"window_seconds"`
		} `json:"rate_limit"`
	} `json:"data"`
	Meta   ResponseMeta `json:"meta"`
	Object UsageObject  `json:"object"`
}

Usage defines model for Usage.

type UsageObject

type UsageObject string

UsageObject defines model for Usage.Object.

const (
	UsageObjectUsage UsageObject = "usage"
)

Defines values for UsageObject.

func (UsageObject) Valid

func (e UsageObject) Valid() bool

Valid indicates whether the value is a known member of the UsageObject enum.

type VerifyWebhook200JSONResponseBodyObject

type VerifyWebhook200JSONResponseBodyObject string

VerifyWebhook200JSONResponseBodyObject defines parameters for VerifyWebhook.

const (
	VerifyWebhook200JSONResponseBodyObjectWebhook VerifyWebhook200JSONResponseBodyObject = "webhook"
)

Defines values for VerifyWebhook200JSONResponseBodyObject.

func (VerifyWebhook200JSONResponseBodyObject) Valid

Valid indicates whether the value is a known member of the VerifyWebhook200JSONResponseBodyObject enum.

type VerifyWebhookJSONRequestBody

type VerifyWebhookJSONRequestBody = VerifyWebhookRequest

VerifyWebhookJSONRequestBody defines body for VerifyWebhook for application/json ContentType.

type VerifyWebhookParams added in v0.3.0

type VerifyWebhookParams struct {
	// XQueryValidation Opt into strict query-name validation. The default is compatible: unknown names are ignored and reported in X-Query-Ignored. With strict, an unknown name returns 400 bad_request with error.reason unknown_query_parameter before the handler runs, including when its percent escape is incomplete.
	XQueryValidation *VerifyWebhookParamsXQueryValidation `json:"X-Query-Validation,omitempty"`
}

VerifyWebhookParams defines parameters for VerifyWebhook.

type VerifyWebhookParamsXQueryValidation added in v0.3.0

type VerifyWebhookParamsXQueryValidation string

VerifyWebhookParamsXQueryValidation defines parameters for VerifyWebhook.

const (
	VerifyWebhookParamsXQueryValidationStrict VerifyWebhookParamsXQueryValidation = "strict"
)

Defines values for VerifyWebhookParamsXQueryValidation.

func (VerifyWebhookParamsXQueryValidation) Valid added in v0.3.0

Valid indicates whether the value is a known member of the VerifyWebhookParamsXQueryValidation enum.

type VerifyWebhookRequest

type VerifyWebhookRequest struct {
	// VerificationToken The one-time token returned on create or on a url change. It is necessary but not sufficient: the destination must also answer the signed webhook.verification challenge with a 2xx.
	VerificationToken string `json:"verification_token"`
}

VerifyWebhookRequest defines model for VerifyWebhookRequest.

type VerifyWebhookResponse

type VerifyWebhookResponse struct {
	Body         []byte
	HTTPResponse *http.Response
	// JSON200 the response for an HTTP 200 `application/json` response
	JSON200 *struct {
		Data   WebhookEndpoint                        `json:"data"`
		Meta   ResponseMeta                           `json:"meta"`
		Object VerifyWebhook200JSONResponseBodyObject `json:"object"`
	}
	// JSON400 the response for an HTTP 400 `application/json` response
	JSON400 *ApiError
	// JSON401 the response for an HTTP 401 `application/json` response
	JSON401 *ApiError
	// JSON402 the response for an HTTP 402 `application/json` response
	JSON402 *ApiError
	// JSON403 the response for an HTTP 403 `application/json` response
	JSON403 *ApiError
	// JSON404 the response for an HTTP 404 `application/json` response
	JSON404 *ApiError
	// JSON408 the response for an HTTP 408 `application/json` response
	JSON408 *ApiError
	// JSON413 the response for an HTTP 413 `application/json` response
	JSON413 *ApiError
	// JSON415 the response for an HTTP 415 `application/json` response
	JSON415 *ApiError
	// JSON422 the response for an HTTP 422 `application/json` response
	JSON422 *ApiError
	// JSON423 the response for an HTTP 423 `application/json` response
	JSON423 *ApiError
	// JSON429 the response for an HTTP 429 `application/json` response
	JSON429 *ApiError
	// JSON500 the response for an HTTP 500 `application/json` response
	JSON500 *ApiError
	// JSON503 the response for an HTTP 503 `application/json` response
	JSON503 *ApiError
	// Headers200 the parsed response headers for an HTTP 200 response
	Headers200 *VerifyWebhookResponse200Headers
	// Headers429 the parsed response headers for an HTTP 429 response
	Headers429 *VerifyWebhookResponse429Headers
	// Headers503 the parsed response headers for an HTTP 503 response
	Headers503 *VerifyWebhookResponse503Headers
}

func ParseVerifyWebhookResponse

func ParseVerifyWebhookResponse(rsp *http.Response) (*VerifyWebhookResponse, error)

ParseVerifyWebhookResponse parses an HTTP response from a VerifyWebhookWithResponse call

func (VerifyWebhookResponse) ContentType

func (r VerifyWebhookResponse) ContentType() string

ContentType is a convenience method to retrieve the Content-Type value from the HTTP response headers

func (VerifyWebhookResponse) GetBody

func (r VerifyWebhookResponse) GetBody() []byte

GetBody returns the raw response body bytes

func (VerifyWebhookResponse) GetJSON200

func (r VerifyWebhookResponse) GetJSON200() *struct {
	Data   WebhookEndpoint                        `json:"data"`
	Meta   ResponseMeta                           `json:"meta"`
	Object VerifyWebhook200JSONResponseBodyObject `json:"object"`
}

GetJSON200 returns the response for an HTTP 200 `application/json` response

func (VerifyWebhookResponse) GetJSON400

func (r VerifyWebhookResponse) GetJSON400() *ApiError

GetJSON400 returns the response for an HTTP 400 `application/json` response

func (VerifyWebhookResponse) GetJSON401

func (r VerifyWebhookResponse) GetJSON401() *ApiError

GetJSON401 returns the response for an HTTP 401 `application/json` response

func (VerifyWebhookResponse) GetJSON402

func (r VerifyWebhookResponse) GetJSON402() *ApiError

GetJSON402 returns the response for an HTTP 402 `application/json` response

func (VerifyWebhookResponse) GetJSON403

func (r VerifyWebhookResponse) GetJSON403() *ApiError

GetJSON403 returns the response for an HTTP 403 `application/json` response

func (VerifyWebhookResponse) GetJSON404

func (r VerifyWebhookResponse) GetJSON404() *ApiError

GetJSON404 returns the response for an HTTP 404 `application/json` response

func (VerifyWebhookResponse) GetJSON408 added in v0.2.0

func (r VerifyWebhookResponse) GetJSON408() *ApiError

GetJSON408 returns the response for an HTTP 408 `application/json` response

func (VerifyWebhookResponse) GetJSON413 added in v0.2.0

func (r VerifyWebhookResponse) GetJSON413() *ApiError

GetJSON413 returns the response for an HTTP 413 `application/json` response

func (VerifyWebhookResponse) GetJSON415 added in v0.2.0

func (r VerifyWebhookResponse) GetJSON415() *ApiError

GetJSON415 returns the response for an HTTP 415 `application/json` response

func (VerifyWebhookResponse) GetJSON422

func (r VerifyWebhookResponse) GetJSON422() *ApiError

GetJSON422 returns the response for an HTTP 422 `application/json` response

func (VerifyWebhookResponse) GetJSON423

func (r VerifyWebhookResponse) GetJSON423() *ApiError

GetJSON423 returns the response for an HTTP 423 `application/json` response

func (VerifyWebhookResponse) GetJSON429

func (r VerifyWebhookResponse) GetJSON429() *ApiError

GetJSON429 returns the response for an HTTP 429 `application/json` response

func (VerifyWebhookResponse) GetJSON500

func (r VerifyWebhookResponse) GetJSON500() *ApiError

GetJSON500 returns the response for an HTTP 500 `application/json` response

func (VerifyWebhookResponse) GetJSON503

func (r VerifyWebhookResponse) GetJSON503() *ApiError

GetJSON503 returns the response for an HTTP 503 `application/json` response

func (VerifyWebhookResponse) Status

func (r VerifyWebhookResponse) Status() string

Status returns HTTPResponse.Status

func (VerifyWebhookResponse) StatusCode

func (r VerifyWebhookResponse) StatusCode() int

StatusCode returns HTTPResponse.StatusCode

type VerifyWebhookResponse200Headers

type VerifyWebhookResponse200Headers struct {
	RateLimitLimit      *int
	RateLimitRemaining  *int
	RateLimitReset      *int
	ServerTiming        *string
	XEffectiveQuery     *string
	XQueryIgnored       *string
	XRateLimitLimit     *int
	XRateLimitRemaining *int
	XRateLimitReset     *int
	XRequestId          *string
	XUsageAccounting    *string
}

VerifyWebhookResponse200Headers the declared response headers of an HTTP 200 response for VerifyWebhook

type VerifyWebhookResponse429Headers

type VerifyWebhookResponse429Headers struct {
	RateLimitLimit      *int
	RateLimitRemaining  *int
	RateLimitReset      *int
	RetryAfter          *int
	XRateLimitLimit     *int
	XRateLimitRemaining *int
	XRateLimitReset     *int
	XRequestId          *string
}

VerifyWebhookResponse429Headers the declared response headers of an HTTP 429 response for VerifyWebhook

type VerifyWebhookResponse503Headers

type VerifyWebhookResponse503Headers struct {
	RetryAfter *int
	XRequestId *string
}

VerifyWebhookResponse503Headers the declared response headers of an HTTP 503 response for VerifyWebhook

type WebhookDelivery

type WebhookDelivery struct {
	// AttemptCount Number of delivery attempts made so far.
	AttemptCount int       `json:"attempt_count"`
	CreatedAt    time.Time `json:"created_at"`

	// DeliveredAt When the delivery was first accepted by the destination. Omitted until a delivery succeeds.
	DeliveredAt *time.Time `json:"delivered_at,omitempty"`

	// EventId Stable event id for this delivery; identical across retries of the same logical event.
	EventId   string           `json:"event_id"`
	EventType WebhookEventType `json:"event_type"`
	Id        int64            `json:"id"`

	// LastError Short description of the most recent delivery failure. Omitted when the last attempt succeeded or none has failed.
	LastError *string `json:"last_error,omitempty"`

	// LastResponseStatus HTTP status code of the most recent delivery attempt. Omitted until a response (or transport error) has been recorded.
	LastResponseStatus *int `json:"last_response_status,omitempty"`

	// NextAttemptAt When the next delivery attempt is due, for a delivery whose status is pending or retry. null while an attempt is in flight (processing) and once the delivery is terminal (delivered or dead_letter).
	NextAttemptAt time.Time             `json:"next_attempt_at"`
	Object        WebhookDeliveryObject `json:"object"`

	// RetryScheduleReason Why next_attempt_at was scheduled: receiver_retry_after for an accepted Retry-After on a 408, 429, or 5xx response; transient_failure for a network or ordinary transient retry; permanent_or_auth_failure for another non-2xx response; manual_redelivery or configuration_changed for those queue actions. null while an attempt is in flight or once the delivery is terminal.
	RetryScheduleReason WebhookDeliveryRetryScheduleReason `json:"retry_schedule_reason"`

	// Status Delivery lifecycle state (e.g. pending, delivered, dead_letter).
	Status string `json:"status"`
}

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.

type WebhookDeliveryObject

type WebhookDeliveryObject string

WebhookDeliveryObject defines model for WebhookDelivery.Object.

const (
	WebhookDeliveryObjectWebhookDelivery WebhookDeliveryObject = "webhook_delivery"
)

Defines values for WebhookDeliveryObject.

func (WebhookDeliveryObject) Valid

func (e WebhookDeliveryObject) Valid() bool

Valid indicates whether the value is a known member of the WebhookDeliveryObject enum.

type WebhookDeliveryRetryScheduleReason added in v0.3.0

type WebhookDeliveryRetryScheduleReason string

WebhookDeliveryRetryScheduleReason Why next_attempt_at was scheduled: receiver_retry_after for an accepted Retry-After on a 408, 429, or 5xx response; transient_failure for a network or ordinary transient retry; permanent_or_auth_failure for another non-2xx response; manual_redelivery or configuration_changed for those queue actions. null while an attempt is in flight or once the delivery is terminal.

const (
	ConfigurationChanged   WebhookDeliveryRetryScheduleReason = "configuration_changed"
	ManualRedelivery       WebhookDeliveryRetryScheduleReason = "manual_redelivery"
	PermanentOrAuthFailure WebhookDeliveryRetryScheduleReason = "permanent_or_auth_failure"
	ReceiverRetryAfter     WebhookDeliveryRetryScheduleReason = "receiver_retry_after"
	TransientFailure       WebhookDeliveryRetryScheduleReason = "transient_failure"
)

Defines values for WebhookDeliveryRetryScheduleReason.

func (WebhookDeliveryRetryScheduleReason) Valid added in v0.3.0

Valid indicates whether the value is a known member of the WebhookDeliveryRetryScheduleReason enum.

type WebhookEndpoint

type WebhookEndpoint struct {
	CreatedAt      time.Time             `json:"created_at"`
	EventTypes     []WebhookEventType    `json:"event_types"`
	FailureCount   int                   `json:"failure_count"`
	Id             int64                 `json:"id"`
	Name           string                `json:"name"`
	Object         WebhookEndpointObject `json:"object"`
	RetryPolicy    WebhookRetryPolicy    `json:"retry_policy"`
	SecretRotation WebhookSecretRotation `json:"secret_rotation"`

	// SigningSecret Returned only on create, immediate rotate-secret, staged rotate-secret/prepare, or staged rotate-secret/activate. Never returned by list, get, update, delete, verify, or retire.
	SigningSecret *string       `json:"signing_secret,omitempty"`
	Status        WebhookStatus `json:"status"`

	// TradeFilters 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.
	TradeFilters               LargeTradeSubscriptionFilters `json:"trade_filters"`
	UpdatedAt                  time.Time                     `json:"updated_at"`
	Url                        string                        `json:"url"`
	Verification               *WebhookVerification          `json:"verification,omitempty"`
	VerificationTokenExpiresAt time.Time                     `json:"verification_token_expires_at"`
	VerifiedAt                 time.Time                     `json:"verified_at"`
}

WebhookEndpoint defines model for WebhookEndpoint.

type WebhookEndpointObject

type WebhookEndpointObject string

WebhookEndpointObject defines model for WebhookEndpoint.Object.

const (
	WebhookEndpointObjectWebhook WebhookEndpointObject = "webhook"
)

Defines values for WebhookEndpointObject.

func (WebhookEndpointObject) Valid

func (e WebhookEndpointObject) Valid() bool

Valid indicates whether the value is a known member of the WebhookEndpointObject enum.

type WebhookEventDescriptor

type WebhookEventDescriptor struct {
	// Description One-line description of when the event fires.
	Description string           `json:"description"`
	Id          WebhookEventType `json:"id"`

	// PayloadShape Short description of the data payload object's shape.
	PayloadShape string `json:"payload_shape"`

	// Status active: the event has a firing producer callsite. dormant: advertised and subscribable, but does not yet enqueue any delivery.
	Status WebhookEventDescriptorStatus `json:"status"`
}

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.

type WebhookEventDescriptorStatus

type WebhookEventDescriptorStatus string

WebhookEventDescriptorStatus active: the event has a firing producer callsite. dormant: advertised and subscribable, but does not yet enqueue any delivery.

const (
	WebhookEventDescriptorStatusActive  WebhookEventDescriptorStatus = "active"
	WebhookEventDescriptorStatusDormant WebhookEventDescriptorStatus = "dormant"
)

Defines values for WebhookEventDescriptorStatus.

func (WebhookEventDescriptorStatus) Valid

Valid indicates whether the value is a known member of the WebhookEventDescriptorStatus enum.

type WebhookEventType

type WebhookEventType string

WebhookEventType defines model for WebhookEventType.

const (
	WebhookEventTypeExportJobCancelled     WebhookEventType = "export_job_cancelled"
	WebhookEventTypeExportJobExpired       WebhookEventType = "export_job_expired"
	WebhookEventTypeExportJobFailed        WebhookEventType = "export_job_failed"
	WebhookEventTypeExportJobReady         WebhookEventType = "export_job_ready"
	WebhookEventTypeInsiderRadarFlagRaised WebhookEventType = "insider_radar_flag_raised"
	WebhookEventTypeLargePositionsUpdated  WebhookEventType = "large_positions_updated"
	WebhookEventTypeLargeTradeInsertedV2   WebhookEventType = "large_trade_inserted_v2"
	WebhookEventTypeLargeTradesInserted    WebhookEventType = "large_trades_inserted"
	WebhookEventTypeLiveSportsUpdated      WebhookEventType = "live_sports_updated"
	WebhookEventTypeSharpMoneyFlowDetected WebhookEventType = "sharp_money_flow_detected"
	WebhookEventTypeSmartMoneyFlowDetected WebhookEventType = "smart_money_flow_detected"
	WebhookEventTypeSuspiciousTradeFlagged WebhookEventType = "suspicious_trade_flagged"
	WebhookEventTypeTraderSynced           WebhookEventType = "trader_synced"
	WebhookEventTypeWalletGradeChanged     WebhookEventType = "wallet_grade_changed"
	WebhookEventTypeWhaleTraderSynced      WebhookEventType = "whale_trader_synced"
	WebhookEventTypeWhaleTradesInserted    WebhookEventType = "whale_trades_inserted"
)

Defines values for WebhookEventType.

func (WebhookEventType) Valid

func (e WebhookEventType) Valid() bool

Valid indicates whether the value is a known member of the WebhookEventType enum.

type WebhookRetryPolicy

type WebhookRetryPolicy struct {
	// DisableAfterConsecutiveFailures Consecutive failed attempts, across all of this endpoint's deliveries, after which the endpoint is disabled and its queued deliveries are dead-lettered. Any successful attempt resets the count.
	DisableAfterConsecutiveFailures WebhookRetryPolicyDisableAfterConsecutiveFailures `json:"disable_after_consecutive_failures"`
	MaxAttempts                     WebhookRetryPolicyMaxAttempts                     `json:"max_attempts"`

	// RetryHorizonSeconds Total wait from a delivery's first failed attempt to its last retry: 60, 120, 240, 480, 960, 1920 and 3600 seconds. A delivery still failing after that is dead_letter.
	RetryHorizonSeconds WebhookRetryPolicyRetryHorizonSeconds `json:"retry_horizon_seconds"`
	TerminalStatus      WebhookRetryPolicyTerminalStatus      `json:"terminal_status"`
}

WebhookRetryPolicy defines model for WebhookRetryPolicy.

type WebhookRetryPolicyDisableAfterConsecutiveFailures added in v0.2.0

type WebhookRetryPolicyDisableAfterConsecutiveFailures int

WebhookRetryPolicyDisableAfterConsecutiveFailures Consecutive failed attempts, across all of this endpoint's deliveries, after which the endpoint is disabled and its queued deliveries are dead-lettered. Any successful attempt resets the count.

const (
	WebhookRetryPolicyDisableAfterConsecutiveFailuresN8 WebhookRetryPolicyDisableAfterConsecutiveFailures = 8
)

Defines values for WebhookRetryPolicyDisableAfterConsecutiveFailures.

func (WebhookRetryPolicyDisableAfterConsecutiveFailures) Valid added in v0.2.0

Valid indicates whether the value is a known member of the WebhookRetryPolicyDisableAfterConsecutiveFailures enum.

type WebhookRetryPolicyMaxAttempts

type WebhookRetryPolicyMaxAttempts int

WebhookRetryPolicyMaxAttempts defines model for WebhookRetryPolicy.MaxAttempts.

const (
	WebhookRetryPolicyMaxAttemptsN8 WebhookRetryPolicyMaxAttempts = 8
)

Defines values for WebhookRetryPolicyMaxAttempts.

func (WebhookRetryPolicyMaxAttempts) Valid

Valid indicates whether the value is a known member of the WebhookRetryPolicyMaxAttempts enum.

type WebhookRetryPolicyRetryHorizonSeconds added in v0.2.0

type WebhookRetryPolicyRetryHorizonSeconds int

WebhookRetryPolicyRetryHorizonSeconds Total wait from a delivery's first failed attempt to its last retry: 60, 120, 240, 480, 960, 1920 and 3600 seconds. A delivery still failing after that is dead_letter.

const (
	N7380 WebhookRetryPolicyRetryHorizonSeconds = 7380
)

Defines values for WebhookRetryPolicyRetryHorizonSeconds.

func (WebhookRetryPolicyRetryHorizonSeconds) Valid added in v0.2.0

Valid indicates whether the value is a known member of the WebhookRetryPolicyRetryHorizonSeconds enum.

type WebhookRetryPolicyTerminalStatus

type WebhookRetryPolicyTerminalStatus string

WebhookRetryPolicyTerminalStatus defines model for WebhookRetryPolicy.TerminalStatus.

const (
	DeadLetter WebhookRetryPolicyTerminalStatus = "dead_letter"
)

Defines values for WebhookRetryPolicyTerminalStatus.

func (WebhookRetryPolicyTerminalStatus) Valid

Valid indicates whether the value is a known member of the WebhookRetryPolicyTerminalStatus enum.

type WebhookSecretRotation added in v0.3.0

type WebhookSecretRotation struct {
	// OverlapExpiresAt When the previous signing secret stops being emitted and accepted. null outside the overlap phase.
	OverlapExpiresAt time.Time `json:"overlap_expires_at"`

	// Status idle when no staged rotation exists, pending after prepare, and overlap after activate while both signing secrets are accepted.
	Status WebhookSecretRotationStatus `json:"status"`
}

WebhookSecretRotation defines model for WebhookSecretRotation.

type WebhookSecretRotationStatus added in v0.3.0

type WebhookSecretRotationStatus string

WebhookSecretRotationStatus idle when no staged rotation exists, pending after prepare, and overlap after activate while both signing secrets are accepted.

const (
	WebhookSecretRotationStatusIdle    WebhookSecretRotationStatus = "idle"
	WebhookSecretRotationStatusOverlap WebhookSecretRotationStatus = "overlap"
	WebhookSecretRotationStatusPending WebhookSecretRotationStatus = "pending"
)

Defines values for WebhookSecretRotationStatus.

func (WebhookSecretRotationStatus) Valid added in v0.3.0

Valid indicates whether the value is a known member of the WebhookSecretRotationStatus enum.

type WebhookStatus

type WebhookStatus string

WebhookStatus defines model for WebhookStatus.

const (
	WebhookStatusActive              WebhookStatus = "active"
	WebhookStatusDisabled            WebhookStatus = "disabled"
	WebhookStatusPendingVerification WebhookStatus = "pending_verification"
)

Defines values for WebhookStatus.

func (WebhookStatus) Valid

func (e WebhookStatus) Valid() bool

Valid indicates whether the value is a known member of the WebhookStatus enum.

type WebhookVerification

type WebhookVerification struct {
	ExpiresAt time.Time `json:"expires_at"`

	// Token One-time verification token returned only on create or URL change. Pass it to POST /api/v1/webhooks/{id}/verify, which activates the endpoint only when the destination also answers the signed webhook.verification challenge with a 2xx.
	Token string `json:"token"`
}

WebhookVerification defines model for WebhookVerification.

type WhaleDatasetArtifactManifest added in v0.4.0

type WhaleDatasetArtifactManifest struct {
	// CompressedSha256 Lowercase SHA-256 of the stored gzip bytes; the multipart ETag is not used as this checksum.
	CompressedSha256 string `json:"compressed_sha256"`

	// CompressedSizeBytes Exact byte count of the gzip-compressed bytes stored by the object provider.
	CompressedSizeBytes int64 `json:"compressed_size_bytes"`

	// ContentSha256 Lowercase SHA-256 of the decompressed content bytes.
	ContentSha256 string `json:"content_sha256"`

	// ContentSizeBytes Exact byte count of the decompressed content stream clients receive.
	ContentSizeBytes int64                                `json:"content_size_bytes"`
	Coverage         WhaleDatasetArtifactManifestCoverage `json:"coverage"`
	Format           WhaleDatasetArtifactManifestFormat   `json:"format"`
	Generation       WhaleDatasetGeneration               `json:"generation"`

	// ManifestVersion Version of the artifact manifest contract.
	ManifestVersion string `json:"manifest_version"`

	// RowCount Number of trade rows written.
	RowCount      int64                                     `json:"row_count"`
	SchemaVersion WhaleDatasetArtifactManifestSchemaVersion `json:"schema_version"`
}

WhaleDatasetArtifactManifest defines model for WhaleDatasetArtifactManifest.

type WhaleDatasetArtifactManifestCoverage added in v0.4.0

type WhaleDatasetArtifactManifestCoverage string

WhaleDatasetArtifactManifestCoverage defines model for WhaleDatasetArtifactManifest.Coverage.

const (
	BestEffortDetectedWhaleAlerts WhaleDatasetArtifactManifestCoverage = "best_effort_detected_whale_alerts"
)

Defines values for WhaleDatasetArtifactManifestCoverage.

func (WhaleDatasetArtifactManifestCoverage) Valid added in v0.4.0

Valid indicates whether the value is a known member of the WhaleDatasetArtifactManifestCoverage enum.

type WhaleDatasetArtifactManifestFormat added in v0.4.0

type WhaleDatasetArtifactManifestFormat string

WhaleDatasetArtifactManifestFormat defines model for WhaleDatasetArtifactManifest.Format.

const (
	WhaleDatasetArtifactManifestFormatNdjson WhaleDatasetArtifactManifestFormat = "ndjson"
)

Defines values for WhaleDatasetArtifactManifestFormat.

func (WhaleDatasetArtifactManifestFormat) Valid added in v0.4.0

Valid indicates whether the value is a known member of the WhaleDatasetArtifactManifestFormat enum.

type WhaleDatasetArtifactManifestSchemaVersion added in v0.4.0

type WhaleDatasetArtifactManifestSchemaVersion string

WhaleDatasetArtifactManifestSchemaVersion defines model for WhaleDatasetArtifactManifest.SchemaVersion.

const (
	WhaleDatasetArtifactManifestSchemaVersionWhaleDatasetV1 WhaleDatasetArtifactManifestSchemaVersion = "whale_dataset_v1"
)

Defines values for WhaleDatasetArtifactManifestSchemaVersion.

func (WhaleDatasetArtifactManifestSchemaVersion) Valid added in v0.4.0

Valid indicates whether the value is a known member of the WhaleDatasetArtifactManifestSchemaVersion enum.

type WhaleDatasetContinuation added in v0.4.0

type WhaleDatasetContinuation struct {
	ConditionId string `json:"condition_id"`

	// Cursor Opaque commit-safe replay cursor; replay the same condition_id and min_size.
	Cursor                string `json:"cursor"`
	DeduplicationIdentity string `json:"deduplication_identity"`
	Delivery              string `json:"delivery"`

	// FromCommitXid Writer floor included by the replay cursor. It can precede the snapshot horizon to include arrivals after the finite window end.
	FromCommitXid string `json:"from_commit_xid"`

	// MinSize Normalized USD threshold; pass it to the replay query.
	MinSize                   string                                            `json:"min_size"`
	Path                      WhaleDatasetContinuationPath                      `json:"path"`
	TimeWindowAppliesToDeltas WhaleDatasetContinuationTimeWindowAppliesToDeltas `json:"time_window_applies_to_deltas"`
}

WhaleDatasetContinuation defines model for WhaleDatasetContinuation.

type WhaleDatasetContinuationPath added in v0.4.0

type WhaleDatasetContinuationPath string

WhaleDatasetContinuationPath defines model for WhaleDatasetContinuation.Path.

const (
	Apiv1eventsfeedsince WhaleDatasetContinuationPath = "/api/v1/events/feed/since"
)

Defines values for WhaleDatasetContinuationPath.

func (WhaleDatasetContinuationPath) Valid added in v0.4.0

Valid indicates whether the value is a known member of the WhaleDatasetContinuationPath enum.

type WhaleDatasetContinuationTimeWindowAppliesToDeltas added in v0.4.0

type WhaleDatasetContinuationTimeWindowAppliesToDeltas bool

WhaleDatasetContinuationTimeWindowAppliesToDeltas defines model for WhaleDatasetContinuation.TimeWindowAppliesToDeltas.

const (
	WhaleDatasetContinuationTimeWindowAppliesToDeltasFalse WhaleDatasetContinuationTimeWindowAppliesToDeltas = false
)

Defines values for WhaleDatasetContinuationTimeWindowAppliesToDeltas.

func (WhaleDatasetContinuationTimeWindowAppliesToDeltas) Valid added in v0.4.0

Valid indicates whether the value is a known member of the WhaleDatasetContinuationTimeWindowAppliesToDeltas enum.

type WhaleDatasetFilters added in v0.4.0

type WhaleDatasetFilters struct {
	ConditionId  string    `json:"condition_id"`
	From         time.Time `json:"from"`
	MinSizeCents int       `json:"min_size_cents"`
	To           time.Time `json:"to"`
}

WhaleDatasetFilters Normalized immutable request; [from, to), maximum 31 days; min_size rounded to cents like durable replay.

type WhaleDatasetGeneration added in v0.4.0

type WhaleDatasetGeneration struct {
	// CommitHorizonXid All snapshot rows have a writer xid strictly below this closed visibility horizon. Decimal string preserves integer precision.
	CommitHorizonXid string                            `json:"commit_horizon_xid"`
	Consistency      WhaleDatasetGenerationConsistency `json:"consistency"`
	Continuation     WhaleDatasetContinuation          `json:"continuation"`

	// Coverage Best-effort detected whale alerts only; not all provider fills. No trader or market enrichment.
	Coverage             string                                     `json:"coverage"`
	DatasetSchemaVersion WhaleDatasetGenerationDatasetSchemaVersion `json:"dataset_schema_version"`
	ExpiresAt            time.Time                                  `json:"expires_at"`
	ExtractionElapsedMs  int                                        `json:"extraction_elapsed_ms"`

	// Filters Normalized immutable request; [from, to), maximum 31 days; min_size rounded to cents like durable replay.
	Filters    WhaleDatasetFilters          `json:"filters"`
	Id         openapi_types.UUID           `json:"id"`
	SelectedAt time.Time                    `json:"selected_at"`
	Source     WhaleDatasetGenerationSource `json:"source"`
}

WhaleDatasetGeneration defines model for WhaleDatasetGeneration.

type WhaleDatasetGenerationConsistency added in v0.4.0

type WhaleDatasetGenerationConsistency string

WhaleDatasetGenerationConsistency defines model for WhaleDatasetGeneration.Consistency.

const (
	RepeatableReadCommitHorizon WhaleDatasetGenerationConsistency = "repeatable_read_commit_horizon"
)

Defines values for WhaleDatasetGenerationConsistency.

func (WhaleDatasetGenerationConsistency) Valid added in v0.4.0

Valid indicates whether the value is a known member of the WhaleDatasetGenerationConsistency enum.

type WhaleDatasetGenerationDatasetSchemaVersion added in v0.4.0

type WhaleDatasetGenerationDatasetSchemaVersion string

WhaleDatasetGenerationDatasetSchemaVersion defines model for WhaleDatasetGeneration.DatasetSchemaVersion.

const (
	WhaleDatasetGenerationDatasetSchemaVersionWhaleDatasetV1 WhaleDatasetGenerationDatasetSchemaVersion = "whale_dataset_v1"
)

Defines values for WhaleDatasetGenerationDatasetSchemaVersion.

func (WhaleDatasetGenerationDatasetSchemaVersion) Valid added in v0.4.0

Valid indicates whether the value is a known member of the WhaleDatasetGenerationDatasetSchemaVersion enum.

type WhaleDatasetGenerationSource added in v0.4.0

type WhaleDatasetGenerationSource string

WhaleDatasetGenerationSource defines model for WhaleDatasetGeneration.Source.

const (
	WhaleDatasetGenerationSourceWhaleAlerts WhaleDatasetGenerationSource = "whale_alerts"
)

Defines values for WhaleDatasetGenerationSource.

func (WhaleDatasetGenerationSource) Valid added in v0.4.0

Valid indicates whether the value is a known member of the WhaleDatasetGenerationSource enum.

type WhaleDatasetJob added in v0.4.0

type WhaleDatasetJob struct {
	Data struct {
		// Artifact Present only while status is ready: the stored object's identity, so a client can check the download it receives.
		Artifact *struct {
			// ArtifactId Stable identity for this completed export artifact; unchanged when a temporary download URL is renewed.
			ArtifactId string `json:"artifact_id"`

			// CompressedSizeBytes Bytes on the wire (gzip); file_size is the decompressed size.
			CompressedSizeBytes int64                                      `json:"compressed_size_bytes"`
			ContentEncoding     WhaleDatasetJobDataArtifactContentEncoding `json:"content_encoding"`
			ContentType         WhaleDatasetJobDataArtifactContentType     `json:"content_type"`

			// Etag The storage ETag of the object.
			Etag string `json:"etag"`

			// Manifest Immutable source, window, replay handoff, count and hashes of both content and gzip bytes.
			Manifest *WhaleDatasetArtifactManifest `json:"manifest"`
		} `json:"artifact,omitempty"`

		// Attempt Worker claims so far.
		Attempt int `json:"attempt"`

		// CancelRequestedAt When the owner asked to cancel the job; null otherwise. Set on every cancelled job, including one cancelled while queued. While status is cancel_requested this is the instant the worker was asked to stop.
		CancelRequestedAt time.Time `json:"cancel_requested_at"`

		// CancelledAt When the job reached cancelled; null until then.
		CancelledAt time.Time `json:"cancelled_at"`
		CreatedAt   time.Time `json:"created_at"`

		// DataAsOf Snapshot selection clock, null until the artifact is written; not provider completeness.
		DataAsOf time.Time `json:"data_as_of"`
		Error    string    `json:"error"`

		// ExpiredAt When the job became expired; null until then.
		ExpiredAt time.Time `json:"expired_at"`

		// ExpiresAt The retention window: 24 hours from submit. A ready file downloads until this instant; a job that has not reached ready by it fails. A reused job (200 on submit) keeps its original window.
		ExpiresAt time.Time `json:"expires_at"`
		FailedAt  time.Time `json:"failed_at"`
		FileSize  int64     `json:"file_size"`

		// Filters Normalized immutable request; [from, to), maximum 31 days; min_size rounded to cents like durable replay.
		Filters WhaleDatasetFilters       `json:"filters"`
		Format  WhaleDatasetJobDataFormat `json:"format"`
		JobId   int64                     `json:"job_id"`

		// MaxAttempts The job fails when attempt reaches this.
		MaxAttempts int `json:"max_attempts"`

		// NextAction What to do next: poll the status route after poll_after_s, follow the download route, or submit a new export. Published beside status so a status value added later does not strand a client.
		NextAction WhaleDatasetJobDataNextAction `json:"next_action"`

		// PollAfterS Seconds to wait before polling again. Absent when terminal. 5 while queued, running or cancel_requested; 300 while reconcile_required, the cadence that state can change at.
		PollAfterS      *int  `json:"poll_after_s,omitempty"`
		ProcessedTrades int64 `json:"processed_trades"`

		// ReadyAt When the file became downloadable. null before ready, and on jobs finalized before this field existed.
		ReadyAt time.Time `json:"ready_at"`

		// StartedAt When the worker last claimed the job; null while queued.
		StartedAt time.Time `json:"started_at"`

		// Status queued: accepted, not started. running: the worker is streaming rows. reconcile_required: the upload finished but the storage completion answer was lost; the hourly reconciler reads the object back and moves the job to ready or failed, and expires_at bounds the wait. ready: downloadable until expires_at. failed: terminal; error says why; submit a new export. expired: the retention window passed; the file is retired, the download route answers 410, submit a new export. cancel_requested: the owner cancelled a running job (POST /api/v1/trader/{address}/export/cancel); the worker stops at its next safe point and the job reads cancelled. cancelled: terminal; the owner cancelled the job and no file was published; submit a new export. A job that has not reached ready by expires_at reads failed with error 'export expired before completion'. failed, cancelled and expired rows stay readable for 48 hours, then the job answers 404.
		Status WhaleDatasetJobDataStatus `json:"status"`

		// Terminal True when status never changes again (ready, failed, expired, cancelled). Stop polling.
		Terminal    bool  `json:"terminal"`
		TotalTrades int64 `json:"total_trades"`
	} `json:"data"`
	Meta   ResponseMeta          `json:"meta"`
	Object WhaleDatasetJobObject `json:"object"`
}

WhaleDatasetJob defines model for WhaleDatasetJob.

type WhaleDatasetJobDataArtifactContentEncoding added in v0.4.0

type WhaleDatasetJobDataArtifactContentEncoding string

WhaleDatasetJobDataArtifactContentEncoding defines model for WhaleDatasetJob.Data.Artifact.ContentEncoding.

const (
	WhaleDatasetJobDataArtifactContentEncodingGzip WhaleDatasetJobDataArtifactContentEncoding = "gzip"
)

Defines values for WhaleDatasetJobDataArtifactContentEncoding.

func (WhaleDatasetJobDataArtifactContentEncoding) Valid added in v0.4.0

Valid indicates whether the value is a known member of the WhaleDatasetJobDataArtifactContentEncoding enum.

type WhaleDatasetJobDataArtifactContentType added in v0.4.0

type WhaleDatasetJobDataArtifactContentType string

WhaleDatasetJobDataArtifactContentType defines model for WhaleDatasetJob.Data.Artifact.ContentType.

const (
	WhaleDatasetJobDataArtifactContentTypeApplicationxNdjson WhaleDatasetJobDataArtifactContentType = "application/x-ndjson"
)

Defines values for WhaleDatasetJobDataArtifactContentType.

func (WhaleDatasetJobDataArtifactContentType) Valid added in v0.4.0

Valid indicates whether the value is a known member of the WhaleDatasetJobDataArtifactContentType enum.

type WhaleDatasetJobDataFormat added in v0.4.0

type WhaleDatasetJobDataFormat string

WhaleDatasetJobDataFormat defines model for WhaleDatasetJob.Data.Format.

const (
	WhaleDatasetJobDataFormatNdjson WhaleDatasetJobDataFormat = "ndjson"
)

Defines values for WhaleDatasetJobDataFormat.

func (WhaleDatasetJobDataFormat) Valid added in v0.4.0

func (e WhaleDatasetJobDataFormat) Valid() bool

Valid indicates whether the value is a known member of the WhaleDatasetJobDataFormat enum.

type WhaleDatasetJobDataNextAction added in v0.4.0

type WhaleDatasetJobDataNextAction string

WhaleDatasetJobDataNextAction What to do next: poll the status route after poll_after_s, follow the download route, or submit a new export. Published beside status so a status value added later does not strand a client.

const (
	WhaleDatasetJobDataNextActionDownload WhaleDatasetJobDataNextAction = "download"
	WhaleDatasetJobDataNextActionPoll     WhaleDatasetJobDataNextAction = "poll"
	WhaleDatasetJobDataNextActionResubmit WhaleDatasetJobDataNextAction = "resubmit"
)

Defines values for WhaleDatasetJobDataNextAction.

func (WhaleDatasetJobDataNextAction) Valid added in v0.4.0

Valid indicates whether the value is a known member of the WhaleDatasetJobDataNextAction enum.

type WhaleDatasetJobDataStatus added in v0.4.0

type WhaleDatasetJobDataStatus string

WhaleDatasetJobDataStatus queued: accepted, not started. running: the worker is streaming rows. reconcile_required: the upload finished but the storage completion answer was lost; the hourly reconciler reads the object back and moves the job to ready or failed, and expires_at bounds the wait. ready: downloadable until expires_at. failed: terminal; error says why; submit a new export. expired: the retention window passed; the file is retired, the download route answers 410, submit a new export. cancel_requested: the owner cancelled a running job (POST /api/v1/trader/{address}/export/cancel); the worker stops at its next safe point and the job reads cancelled. cancelled: terminal; the owner cancelled the job and no file was published; submit a new export. A job that has not reached ready by expires_at reads failed with error 'export expired before completion'. failed, cancelled and expired rows stay readable for 48 hours, then the job answers 404.

const (
	WhaleDatasetJobDataStatusCancelRequested   WhaleDatasetJobDataStatus = "cancel_requested"
	WhaleDatasetJobDataStatusCancelled         WhaleDatasetJobDataStatus = "cancelled"
	WhaleDatasetJobDataStatusExpired           WhaleDatasetJobDataStatus = "expired"
	WhaleDatasetJobDataStatusFailed            WhaleDatasetJobDataStatus = "failed"
	WhaleDatasetJobDataStatusQueued            WhaleDatasetJobDataStatus = "queued"
	WhaleDatasetJobDataStatusReady             WhaleDatasetJobDataStatus = "ready"
	WhaleDatasetJobDataStatusReconcileRequired WhaleDatasetJobDataStatus = "reconcile_required"
	WhaleDatasetJobDataStatusRunning           WhaleDatasetJobDataStatus = "running"
)

Defines values for WhaleDatasetJobDataStatus.

func (WhaleDatasetJobDataStatus) Valid added in v0.4.0

func (e WhaleDatasetJobDataStatus) Valid() bool

Valid indicates whether the value is a known member of the WhaleDatasetJobDataStatus enum.

type WhaleDatasetJobObject added in v0.4.0

type WhaleDatasetJobObject string

WhaleDatasetJobObject defines model for WhaleDatasetJob.Object.

const (
	WhaleDatasetJobObjectWhaleDatasetJob WhaleDatasetJobObject = "whale_dataset_job"
)

Defines values for WhaleDatasetJobObject.

func (WhaleDatasetJobObject) Valid added in v0.4.0

func (e WhaleDatasetJobObject) Valid() bool

Valid indicates whether the value is a known member of the WhaleDatasetJobObject enum.

Directories

Path Synopsis
examples
discovery command
Command discovery prints the live 0xinsider API index and health, which need no credential.
Command discovery prints the live 0xinsider API index and health, which need no credential.
leaderboard command
Command leaderboard prints the first ten graded wallets.
Command leaderboard prints the first ten graded wallets.
stream command
Command stream follows the live event stream and prints each frame with its sequence, resuming from the last delivered sequence after a clean close.
Command stream follows the live event stream and prints each frame with its sequence, resuming from the last delivered sequence after a clean close.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL