Skip to main content

Module api_models

Module api_models 

Source
Expand description

Canonical API response types for the Hypercall REST API.

These types are the server’s source of truth for API responses. Both the server and client crates should use these types to ensure full type parity for serialization and deserialization.

Re-exports§

pub use crate::responses::MarginSummary;

Structs§

AccountBalance
USDC balance for a single trading account.
ApiResponse
Generic envelope for all API responses.
CompetitionData
Full metadata for a trading competition.
CompetitionLeaderboardResponse
Paginated competition leaderboard with optional connected-user context.
CompetitionResponse
Response containing a single competition.
CompetitionUpdateRequest
Admin request to partially update an existing competition.
CompetitionUpsertRequest
Admin request to create a new competition.
CompetitionsResponse
Paginated list of competitions.
ConnectedUserRank
The requesting (connected) user’s own rank on the leaderboard.
DeleteMmpConfigRequest
Signed request to delete an MMP configuration.
DeleteUserTierRequest
Admin request to remove a custom tier assignment (revert to default).
DirectiveStatusResponse
Directive delivery status lookup response.
ExchangeInfoResponse
Public exchange configuration for frontend deposit/withdraw integration.
ExtendedRiskMatrixResponse
Full risk matrix showing per-instrument PnL across all SPAN scenarios.
FillApiResponse
A single fill (one side of a trade) for a specific wallet.
FillsResponse
Paginated list of fills.
HealthResponse
Simple health-check response from GET /health.
Instrument
Server-canonical representation of a tradable option instrument.
InstrumentRiskRowResponse
Per-instrument row in the extended risk matrix.
LeaderboardRow
A single row on the competition leaderboard.
MarginModeApiResponse
API envelope for margin mode operations.
MarginModeResponse
Result of a margin mode switch.
MarketInfo
Summary of a single expiry’s market data for one underlying.
MarketsResponse
Response containing all available markets.
MmpConfigData
Market Maker Protection (MMP) configuration for a wallet and currency.
MmpConfigResponse
Response listing MMP configurations for a wallet.
MonitoringAccountSummary
Admin monitoring summary for a single account.
MonitoringAccountsResponse
Admin monitoring response listing all accounts.
MonitoringPositionHolder
A single wallet holding a position in a monitored symbol.
MonitoringPositionsResponse
Admin monitoring response listing positions grouped by symbol.
MonitoringSymbolPosition
Aggregated position data for one symbol across all holders (admin monitoring).
OptionsChainGreeksAbs
Absolute (per-contract) option Greeks.
OptionsChainGreeksCash
Cash-denominated option Greeks (dollar impact per unit move).
OptionsChainLeg
A single call or put leg in the options chain, including top-of-book quotes and Greeks.
OptionsChainSnapshotResponse
Full options chain snapshot for one underlying and expiry.
OptionsChainStrikeRow
A single strike row in the options chain, pairing call and put legs.
Order
A resting or historical order on the matching engine.
Portfolio
Full portfolio snapshot for a single account.
PortfolioGreeksAggregate
Aggregate Greeks across all positions in a portfolio.
PortfolioGreeksResponse
Full portfolio Greeks breakdown: per-leg detail and aggregate totals.
Position
A single open position for one instrument.
PositionGreeksLeg
Greeks for a single position leg in a portfolio.
PositionWithMetrics
Position enriched with derived risk metrics. Flattened in JSON (no nested position key).
ProfileCompetitionRankSummary
Summary of a user’s rank in a specific competition, shown on their profile.
ProfileData
Aggregated profile data for a single user.
ProfileMarginStats
Margin statistics shown on a user’s profile.
ProfileMetricMedals
Platform-wide medals earned by a user across all competitions.
ProfilePnlStats
PnL statistics shown on a user’s profile.
ProfileResponse
Response containing a user’s full profile.
ProfileTradesResponse
Paginated list of a user’s trade fills, shown on their profile.
ReadinessComponentReport
Readiness status of one internal component (DB, engine, oracles, etc.).
ReadyResponse
Aggregated readiness probe response from GET /ready.
RealizedPnlResponse
Response containing per-symbol realized PnL.
RealizedPnlRow
Realized PnL breakdown for one instrument symbol.
ResetMmpRequest
Signed request to reset (unfreeze) a triggered MMP state.
RiskGridResponse
Top-level SPAN risk grid response for an account.
RiskGridScenario
A single SPAN risk-grid scenario with its computed PnL.
ScenarioDefinition
Definition of a risk scenario (without computed PnL).
SetMmpConfigRequest
Signed request to create or update an MMP configuration.
SetUserTierRequest
Admin request to assign a fee/rate-limit tier to a wallet.
SigningDomainInfo
EIP-712 domain parameters for frontend signing.
SimulatedGreeksOrder
A hypothetical order used for simulating portfolio Greeks impact.
SpanMarginSummary
SPAN-based portfolio margin breakdown for an account.
TradeApiResponse
A matched trade between a maker and a taker.
TradesResponse
Paginated list of trades.
TradingLimits
Rate and capacity limits for a given tier.
UserTierData
A wallet’s assigned fee/rate-limit tier.
UserTierResponse
Response containing a wallet’s current tier assignment.
VersionResponse
Build version and git metadata returned by GET /version.
WithdrawalHistoryResponse
Withdrawal history response containing a list of withdrawal directives.

Enums§

CompetitionSortByValue
Field to sort the leaderboard by. Serialized as lowercase.
CompetitionSortOrderValue
Sort direction for leaderboard queries. Serialized as lowercase.
CompetitionStateValue
Lifecycle state of a trading competition. Serialized as lowercase.
CompetitionWinConditionValue
Metric used to determine competition winners. Serialized as lowercase.
InstrumentStatus
Lifecycle state of a tradable instrument.

Functions§

decimal_or_zero 🔒
default_margin_mode 🔒