@0xmonaco/types 1.0.83 → 1.0.85

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -27,7 +27,7 @@ export interface AuthAPI extends BaseAPI {
27
27
  * relationship. Has no effect when the user already exists.
28
28
  * @returns Promise resolving to the authentication state (including the session keypair)
29
29
  */
30
- authenticate(clientId: string, referralCode?: string): Promise<AuthState>;
30
+ authenticate(clientId: string, referralCode?: string, inviteCode?: string): Promise<AuthState>;
31
31
  /**
32
32
  * Signs a challenge message using the wallet client.
33
33
  *
@@ -75,7 +75,18 @@ export interface AuthAPI extends BaseAPI {
75
75
  * recorded at first sign-up only.
76
76
  * @returns Promise resolving to the authentication state
77
77
  */
78
- verifySignature(address: string, signature: string, nonce: string, clientId: string, session: SessionCredentials, referralCode?: string): Promise<AuthState>;
78
+ verifySignature(address: string, signature: string, nonce: string, clientId: string, session: SessionCredentials, referralCode?: string, inviteCode?: string): Promise<AuthState>;
79
+ /**
80
+ * Mint one available Mainnet invite code immediately, without admin review.
81
+ * Each call consumes a slot; read the allowance with {@link listInviteCodes}.
82
+ */
83
+ requestInviteCodes(): Promise<InviteCodeRequestSummary>;
84
+ /**
85
+ * Read the wallet's invite allowance and the codes it minted, newest first.
86
+ * Read-only: never consumes a slot, and recovers a code whose mint response
87
+ * was lost. Refused for delegated-agent sessions.
88
+ */
89
+ listInviteCodes(): Promise<InviteCodeList>;
79
90
  /**
80
91
  * Refreshes the current session's expiry. The request is signed with the
81
92
  * active session key (set via {@link setSessionKeypair}). For a delegated
@@ -98,3 +109,58 @@ export interface AuthAPI extends BaseAPI {
98
109
  setWalletClient(walletClient: unknown): void;
99
110
  }
100
111
  export type { ApplicationInfo, AuthState, ChallengeResponse, SessionCredentials, SessionRefreshResponse, User, } from "./responses";
112
+ export interface InviteCodeRequestSummary {
113
+ mainnetVolumeUsd: string;
114
+ eligibleMilestones: number;
115
+ pendingMilestones: number[];
116
+ issuedMilestones: number[];
117
+ redeemedMilestones: number[];
118
+ newlyRequestedMilestones: number[];
119
+ /** Newly minted bearer code; absent when the allowance is exhausted. Never log it. */
120
+ code?: string;
121
+ codeId?: string;
122
+ /** Slot 0 is the initial code; N is the Nth 250,000 USDC milestone. */
123
+ mintedMilestone?: number;
124
+ totalAllowance: number;
125
+ availableCodes: number;
126
+ revokedMilestones: number[];
127
+ }
128
+ /** One code the wallet minted or was issued. */
129
+ export interface InviteCodeEntry {
130
+ codeId: string;
131
+ /** Slot 0 is the initial code; N is the Nth 250,000 USDC milestone. */
132
+ milestone: number;
133
+ /** `issued`, `redeemed` or `revoked`. */
134
+ status: string;
135
+ /** Bearer code, present only while issued and unredeemed. Never log it. */
136
+ code?: string;
137
+ /** RFC 3339 creation time. */
138
+ createdAt: string;
139
+ /** RFC 3339 redemption time; absent until redeemed. */
140
+ redeemedAt?: string;
141
+ }
142
+ /** The wallet's invite allowance and its codes, from `listInviteCodes()`. */
143
+ export interface InviteCodeList {
144
+ mainnetVolumeUsd: string;
145
+ eligibleMilestones: number;
146
+ totalAllowance: number;
147
+ availableCodes: number;
148
+ codes: InviteCodeEntry[];
149
+ }
150
+ /**
151
+ * Stable codes on a refused sign-in (deactivation applies in either mode), read
152
+ * from `APIError.serverCode` (REST error envelope `code`, gRPC
153
+ * `google.rpc.ErrorInfo` reason in the `auth.0xmonaco.com` domain). These are
154
+ * HTTP 403. ACCOUNT_DEACTIVATED also survives signed-request authentication
155
+ * and WebSocket authentication/revalidation. Expired or revoked sessions still
156
+ * require a fresh sign-in; a wallet without a grant receives INVITE_CODE_REQUIRED.
157
+ */
158
+ export declare const INVITE_ERROR_CODES: {
159
+ /** The signing account is deactivated. */
160
+ readonly ACCOUNT_DEACTIVATED: "ACCOUNT_DEACTIVATED";
161
+ /** The wallet has no Mainnet access grant and no invite code was supplied: show code entry. */
162
+ readonly INVITE_CODE_REQUIRED: "INVITE_CODE_REQUIRED";
163
+ /** The invite code was not accepted (wrong, already redeemed, revoked, or issued by a deactivated wallet; deliberately indistinguishable). */
164
+ readonly INVITE_CODE_INVALID: "INVITE_CODE_INVALID";
165
+ };
166
+ export type InviteErrorCode = (typeof INVITE_ERROR_CODES)[keyof typeof INVITE_ERROR_CODES];
@@ -4,3 +4,19 @@
4
4
  * Types for wallet authentication operations including challenge creation,
5
5
  * signature verification, and session lifecycle.
6
6
  */
7
+ /**
8
+ * Stable codes on a refused sign-in (deactivation applies in either mode), read
9
+ * from `APIError.serverCode` (REST error envelope `code`, gRPC
10
+ * `google.rpc.ErrorInfo` reason in the `auth.0xmonaco.com` domain). These are
11
+ * HTTP 403. ACCOUNT_DEACTIVATED also survives signed-request authentication
12
+ * and WebSocket authentication/revalidation. Expired or revoked sessions still
13
+ * require a fresh sign-in; a wallet without a grant receives INVITE_CODE_REQUIRED.
14
+ */
15
+ export const INVITE_ERROR_CODES = {
16
+ /** The signing account is deactivated. */
17
+ ACCOUNT_DEACTIVATED: "ACCOUNT_DEACTIVATED",
18
+ /** The wallet has no Mainnet access grant and no invite code was supplied: show code entry. */
19
+ INVITE_CODE_REQUIRED: "INVITE_CODE_REQUIRED",
20
+ /** The invite code was not accepted (wrong, already redeemed, revoked, or issued by a deactivated wallet; deliberately indistinguishable). */
21
+ INVITE_CODE_INVALID: "INVITE_CODE_INVALID",
22
+ };
@@ -162,11 +162,11 @@ export interface Position {
162
162
  * comparison rather than ranking it as oldest.
163
163
  *
164
164
  * The merge rule is PER FIELD GROUP, never per payload. On an EQUAL version
165
- * skip the versioned fields as an idempotent redelivery — EXCEPT
166
- * `isolatedMargin`, which the WebSocket positions snapshot overlays from an
167
- * independent live matching-engine read rather than from the versioned row,
168
- * so it can reflect a later command than the version names and must be
169
- * taken from the newer payload. Also still take
165
+ * skip the versioned fields as an idempotent redelivery — EXCEPT on a
166
+ * WebSocket positions snapshot row, which wins the tie on every field: it
167
+ * is built from live matching-engine state under the persisted row's
168
+ * version, so it can reflect a later command than the version names. Also
169
+ * still take
170
170
  * `markPrice`, `unrealizedPnl`, `liquidationPrice`, `leverage`,
171
171
  * `maintenanceMarginRequired` and `initialMarginRequired` from the newer
172
172
  * payload: those six are re-derived on every read rather than served from
@@ -177,9 +177,14 @@ export interface MonacoSDK {
177
177
  * Complete authentication flow
178
178
  * @param clientId - The client ID for authentication
179
179
  * @param options - Optional configuration for login
180
+ * @param options.connectWebSocket - Auto-connect WebSocket after login (default: false)
181
+ * @param options.inviteCode - Optional case-sensitive Mainnet invite code. Needed while Mainnet
182
+ * Invite Mode is on for any wallet without a Mainnet access grant, existing accounts included;
183
+ * a wallet that already has access never needs it.
180
184
  */
181
185
  login(clientId: string, options?: {
182
186
  connectWebSocket?: boolean;
187
+ inviteCode?: string;
183
188
  }): Promise<AuthState>;
184
189
  /**
185
190
  * Create and adopt an owner-scoped delegated session.
@@ -104,6 +104,8 @@ export type WebSocketErrorCode =
104
104
  "AUTH_REQUIRED"
105
105
  /** The `Authenticate` handshake was rejected; the connection is closed after this frame. */
106
106
  | "AUTH_FAILED"
107
+ /** The account is deactivated; the connection closes and must not automatically reconnect. */
108
+ | "ACCOUNT_DEACTIVATED"
107
109
  /** The per-user concurrent-connection cap was reached; this connection is closed after the frame. */
108
110
  | "CONNECTION_LIMIT"
109
111
  /** The per-connection subscription-cardinality cap was reached. */
@@ -168,9 +170,9 @@ export interface WebSocketReauthenticationInfo {
168
170
  /**
169
171
  * The `Error` frame code that ended the connection: `SESSION_INVALID` (the
170
172
  * session was revoked or expired after the handshake) or `AUTH_FAILED` (the
171
- * `Authenticate` handshake itself was rejected).
173
+ * `Authenticate` handshake itself was rejected), or `ACCOUNT_DEACTIVATED`.
172
174
  */
173
- code: "SESSION_INVALID" | "AUTH_FAILED";
175
+ code: "SESSION_INVALID" | "AUTH_FAILED" | "ACCOUNT_DEACTIVATED";
174
176
  /** Human-readable description from the `Error` frame; for logging and display, never for branching. */
175
177
  message: string;
176
178
  /** WebSocket close code of the connection that was lost (1008 for `SESSION_INVALID`). */
@@ -2,7 +2,8 @@
2
2
  * Account WebSocket Event Types
3
3
  *
4
4
  * Types for real-time account-level margin updates: equity, collateral, free
5
- * collateral, margin ratio, and maintenance requirement for a margin account.
5
+ * collateral, margin ratio, maintenance requirement, initial margin required,
6
+ * withdrawable collateral, and realized PnL for a margin account.
6
7
  *
7
8
  * This is an authenticated channel - requires the signed session-key handshake.
8
9
  * Detected broadcast lag closes the connection with 1013 and requires resync.
@@ -84,6 +85,30 @@ export interface AccountEventData {
84
85
  marginRatio: string;
85
86
  /** Maintenance margin required to keep the account solvent (decimal string) */
86
87
  maintenanceRequirement: string;
88
+ /**
89
+ * Initial margin required by the account's open positions and resting
90
+ * orders (decimal string). The same value as the margin-account REST row's
91
+ * `initialMarginRequired`, so placing or cancelling a resting order moves it.
92
+ *
93
+ * The three margin fields are optional only so a frame from an older server
94
+ * still parses: every current frame and snapshot row carries them. Treat
95
+ * `undefined` as unknown, never as zero.
96
+ */
97
+ initialMarginRequired?: string;
98
+ /**
99
+ * The largest amount a withdrawal or transfer out of this margin account
100
+ * will accept (decimal string): the margin-account REST row's
101
+ * `withdrawableCollateral`. Floored at zero and rounded toward zero at 6
102
+ * decimal places, so a transfer of exactly this amount is accepted.
103
+ */
104
+ withdrawableCollateral?: string;
105
+ /**
106
+ * Realized PnL settled to the margin account plus net funding (decimal
107
+ * string): the margin-account REST row's `realizedPnl`. Realized PnL still
108
+ * held by an open risk bucket is not included; the margin-account PnL
109
+ * endpoint reports that part.
110
+ */
111
+ realizedPnl?: string;
87
112
  /** Timestamp when the account state was updated (ISO 8601) */
88
113
  updatedAt: string;
89
114
  }
@@ -2,7 +2,8 @@
2
2
  * Account WebSocket Event Types
3
3
  *
4
4
  * Types for real-time account-level margin updates: equity, collateral, free
5
- * collateral, margin ratio, and maintenance requirement for a margin account.
5
+ * collateral, margin ratio, maintenance requirement, initial margin required,
6
+ * withdrawable collateral, and realized PnL for a margin account.
6
7
  *
7
8
  * This is an authenticated channel - requires the signed session-key handshake.
8
9
  * Detected broadcast lag closes the connection with 1013 and requires resync.
@@ -158,10 +158,11 @@ export interface CommonOrderEventData {
158
158
  * `"ADL"` or `"COPY"` (a copy trading order the engine placed for one of
159
159
  * your follows).
160
160
  *
161
- * Absent means **not reported**, never `"USER"`: the key is omitted until
162
- * the event's producer fills it, and `"USER"` is sent explicitly once it
163
- * does. Widened past {@link OrderOrigin} because the parser passes an
164
- * unrecognized value through rather than dropping the frame.
161
+ * Every order event carries it, `"USER"` included, so it agrees with REST
162
+ * `getOrder` and the `orders` snapshot row. Absent means **not reported**
163
+ * (a server predating the field), never `"USER"`. Widened past
164
+ * {@link OrderOrigin} because the parser passes an unrecognized value
165
+ * through rather than dropping the frame.
165
166
  * Wire: `origin`.
166
167
  */
167
168
  origin?: OrderOrigin | (string & {});
@@ -175,12 +175,12 @@ export interface PositionEventData {
175
175
  * Fall back to a full field comparison rather than ranking it lowest.
176
176
  *
177
177
  * The merge rule is PER FIELD GROUP, never per frame. On a higher version
178
- * apply everything. On an EQUAL version skip the versioned fields as an
179
- * idempotent redelivery — EXCEPT `isolatedMargin`, which the subscribe-time
180
- * snapshot overlays from an independent live matching-engine read rather
181
- * than from the versioned row, so it can reflect a later command than the
182
- * version names and must be taken from the newer payload or you retain
183
- * stale backing. Also still take `markPrice`, `unrealizedPnl`,
178
+ * apply everything. On an EQUAL version skip a live frame's versioned
179
+ * fields as an idempotent redelivery, but take every field of a
180
+ * subscribe-time snapshot row: the snapshot is built from live
181
+ * matching-engine state under the persisted row's version, so it can
182
+ * reflect a later command than the version names, and skipping it keeps
183
+ * the values the reconnect was meant to correct. Also still take `markPrice`, `unrealizedPnl`,
184
184
  * `liquidationPrice`, `leverage`, `maintenanceMarginRequired` and
185
185
  * `initialMarginRequired` from the newer frame: those six are re-derived
186
186
  * per frame rather than served from the versioned row, carry no version,
@@ -211,7 +211,7 @@ export interface PositionEventData {
211
211
  * still open plus the funding its partial closes settled. A terminal frame
212
212
  * carries the closed position's whole-life total, the same `fundingPaid` a
213
213
  * REST read of the closed position returns. The subscribe-time snapshot
214
- * carries the REST value for the same row.
214
+ * carries the value the position's live frames carry.
215
215
  *
216
216
  * Absent means UNKNOWN, never zero: the server cannot account for every
217
217
  * earlier reduction yet (a value would understate it), or a deployment
@@ -31,6 +31,7 @@
31
31
  */
32
32
  import type { Candlestick } from "../market";
33
33
  import type { OrderSide, OrderType, SelfTradePreventionMode, TimeInForce, TradingMode } from "../trading";
34
+ import type { OrderOrigin } from "./events/orders-events";
34
35
  /**
35
36
  * Receives one channel's complete subscribe-time state.
36
37
  *
@@ -82,8 +83,8 @@ export type OHLCVSnapshotCandle = Omit<Candlestick, "s">;
82
83
  * `Option` serialized WITHOUT `skip_serializing_if`, so the key is always
83
84
  * present and carries `null` when unset — hence `| null` rather than `?`.
84
85
  * `clientOrderId`, `selfTradePreventionMode`, `parentOrderId`, `postOnly`,
85
- * `expirationDate`, `triggerPrice`, `positionSide` and `version` are the fields
86
- * the server omits outright, so they are the `?`s.
86
+ * `expirationDate`, `triggerPrice`, `positionSide`, `version` and `origin` are
87
+ * the fields the server omits outright, so they are the `?`s.
87
88
  *
88
89
  * The value unions are widened (`Union | (string & {})`) for the same reason
89
90
  * the order event's are: the parser hands an unrecognized value through rather
@@ -195,4 +196,12 @@ export interface OrderSnapshotItem {
195
196
  * before the field existed reports. Absent means unknown, never zero.
196
197
  */
197
198
  version?: number;
199
+ /**
200
+ * What placed the order: `"USER"`, `"LIQUIDATION"`, `"SYSTEM"`, `"ADL"` or
201
+ * `"COPY"`, as REST `getOrder` returns it and as every live order event
202
+ * carries it. Omitted, not `null`, when the server does not report it (a
203
+ * server predating the field); absent means not reported, never `"USER"`.
204
+ * Wire: `origin`.
205
+ */
206
+ origin?: OrderOrigin | (string & {});
198
207
  }
@@ -10,6 +10,6 @@
10
10
  * hand-written SDK surface. CI regenerates it and fails on a diff, identical to
11
11
  * the `schema.ts` wire-types tripwire (MON-1476), so it can never go stale.
12
12
  */
13
- export declare const OPERATION_IDS: readonly ["add_follow_position_margin", "attach_position_tp_sl", "batch_cancel_all", "batch_cancel_all_by_pair", "batch_cancel_orders", "batch_close_all_positions", "batch_create_orders", "batch_replace_orders", "cancel_conditional_order", "cancel_order", "cancel_twap_order", "check_trader_code_availability", "claim_buildercode_rewards", "claim_managed_market_lease", "clear_trader_code", "close_all_copy_positions", "close_follow_positions", "close_position", "close_sub_account", "create_challenge", "create_delegated_session", "create_order", "create_sub_account", "create_sub_account_limit", "create_twap_order", "delete_sub_account_limit", "get_application_config", "get_application_stats", "get_available_collateral", "get_buildercode_payout_summary", "get_buildercode_rewards_balance", "get_buildercodes_config", "get_candles", "get_conditional_order", "get_faucet_info", "get_follow", "get_funding_state", "get_index_price", "get_lead_trader", "get_margin_account_movements", "get_margin_account_pnl", "get_margin_account_summary", "get_mark_price", "get_market_metadata", "get_market_stats", "get_my_fee_tier", "get_my_lead_trader", "get_my_referral_downline", "get_my_referral_position", "get_my_referral_tree", "get_my_trader_code", "get_open_interest", "get_order_by_id", "get_orderbook_snapshot", "get_orders", "get_parent_margin_account_movements", "get_parent_margin_account_summary", "get_perp_market_config", "get_perp_market_summary", "get_portfolio_assets", "get_portfolio_chart", "get_portfolio_margin", "get_portfolio_performance", "get_portfolio_realized_pnl", "get_portfolio_stats", "get_portfolio_summary", "get_position", "get_position_pnl_history", "get_position_risk", "get_pulse", "get_rewards_balance", "get_screener", "get_self_trade_prevention_default", "get_sub_account_limits", "get_sweeper_chains", "get_trade_by_id", "get_trader_code_info", "get_trades", "get_trading_pair_by_id", "get_twap_order", "get_twap_order_tca", "get_user_balance_by_asset", "get_user_balances", "get_user_movements", "get_user_profile", "get_user_trades", "get_withdrawal", "health_check", "initiate_withdrawal", "list_all_funding_history", "list_application_balances", "list_application_movements", "list_application_orders", "list_application_users", "list_builder_fee_changes", "list_buildercode_payouts", "list_conditional_orders", "list_delegated_agent_owners", "list_delegated_agents", "list_follow_leader_positions", "list_funding_history", "list_funding_payments", "list_lead_trader_closed_trades", "list_lead_trader_open_positions", "list_lead_traders", "list_managed_market_assignments", "list_margin_accounts", "list_my_followers", "list_my_follows", "list_pending_withdrawals", "list_position_history", "list_positions", "list_sub_accounts_with_balances", "list_trading_pairs", "list_twap_order_slices", "list_twap_orders", "mint_tokens", "pitpass_check_trader_code_availability", "pitpass_clear_trader_code", "pitpass_get_my_referral_downline", "pitpass_get_my_referral_position", "pitpass_get_my_referral_tree", "pitpass_get_my_trader_code", "pitpass_get_rewards_balance", "pitpass_get_trader_code_info", "pitpass_set_trader_code", "pitpass_transfer_rewards", "preview_follow", "refresh_managed_market_quotes", "refresh_session", "register_deposit_address", "replace_order", "revoke_delegated_agent", "revoke_session", "set_builder_fee", "set_self_trade_prevention_default", "set_trader_code", "simulate_fees", "simulate_order_risk", "simulate_parent_margin_order_risk", "simulate_risk_bucket_order_risk", "stop_follow", "submit_whitelist", "transfer_collateral", "transfer_collateral_from_margin_account", "transfer_collateral_from_parent_margin_account", "transfer_collateral_from_sub_account", "transfer_collateral_to_margin_account", "transfer_collateral_to_parent_margin_account", "transfer_collateral_to_risk_bucket", "transfer_collateral_to_sub_account", "transfer_rewards", "update_sub_account_limit", "upsert_delegated_agent", "upsert_follow", "upsert_lead_trader", "verify_signature"];
13
+ export declare const OPERATION_IDS: readonly ["add_follow_position_margin", "attach_position_tp_sl", "batch_cancel_all", "batch_cancel_all_by_pair", "batch_cancel_orders", "batch_close_all_positions", "batch_create_orders", "batch_replace_orders", "cancel_conditional_order", "cancel_order", "cancel_twap_order", "check_trader_code_availability", "claim_buildercode_rewards", "claim_managed_market_lease", "clear_trader_code", "close_all_copy_positions", "close_follow_positions", "close_position", "close_sub_account", "create_challenge", "create_delegated_session", "create_order", "create_sub_account", "create_sub_account_limit", "create_twap_order", "delete_sub_account_limit", "get_application_config", "get_application_stats", "get_available_collateral", "get_buildercode_payout_summary", "get_buildercode_rewards_balance", "get_buildercodes_config", "get_candles", "get_conditional_order", "get_faucet_info", "get_follow", "get_funding_state", "get_index_price", "get_lead_trader", "get_margin_account_movements", "get_margin_account_pnl", "get_margin_account_summary", "get_mark_price", "get_market_metadata", "get_market_stats", "get_my_fee_tier", "get_my_lead_trader", "get_my_referral_downline", "get_my_referral_position", "get_my_referral_tree", "get_my_trader_code", "get_open_interest", "get_order_by_id", "get_orderbook_snapshot", "get_orders", "get_parent_margin_account_movements", "get_parent_margin_account_summary", "get_perp_market_config", "get_perp_market_summary", "get_portfolio_assets", "get_portfolio_chart", "get_portfolio_margin", "get_portfolio_performance", "get_portfolio_realized_pnl", "get_portfolio_stats", "get_portfolio_summary", "get_position", "get_position_pnl_history", "get_position_risk", "get_pulse", "get_rewards_balance", "get_screener", "get_self_trade_prevention_default", "get_sub_account_limits", "get_sweeper_chains", "get_trade_by_id", "get_trader_code_info", "get_trades", "get_trading_pair_by_id", "get_twap_order", "get_twap_order_tca", "get_user_balance_by_asset", "get_user_balances", "get_user_movements", "get_user_profile", "get_user_trades", "get_withdrawal", "health_check", "initiate_withdrawal", "list_all_funding_history", "list_application_balances", "list_application_movements", "list_application_orders", "list_application_users", "list_builder_fee_changes", "list_buildercode_payouts", "list_conditional_orders", "list_delegated_agent_owners", "list_delegated_agents", "list_follow_leader_positions", "list_funding_history", "list_funding_payments", "list_invite_codes", "list_lead_trader_closed_trades", "list_lead_trader_open_positions", "list_lead_traders", "list_managed_market_assignments", "list_margin_accounts", "list_my_followers", "list_my_follows", "list_pending_withdrawals", "list_position_history", "list_positions", "list_sub_accounts_with_balances", "list_trading_pairs", "list_twap_order_slices", "list_twap_orders", "mint_tokens", "pitpass_check_trader_code_availability", "pitpass_clear_trader_code", "pitpass_get_my_referral_downline", "pitpass_get_my_referral_position", "pitpass_get_my_referral_tree", "pitpass_get_my_trader_code", "pitpass_get_rewards_balance", "pitpass_get_trader_code_info", "pitpass_set_trader_code", "pitpass_transfer_rewards", "preview_follow", "refresh_managed_market_quotes", "refresh_session", "register_deposit_address", "replace_order", "request_invite_codes", "revoke_delegated_agent", "revoke_session", "set_builder_fee", "set_self_trade_prevention_default", "set_trader_code", "simulate_fees", "simulate_order_risk", "simulate_parent_margin_order_risk", "simulate_risk_bucket_order_risk", "stop_follow", "submit_whitelist", "transfer_collateral", "transfer_collateral_from_margin_account", "transfer_collateral_from_parent_margin_account", "transfer_collateral_from_sub_account", "transfer_collateral_to_margin_account", "transfer_collateral_to_parent_margin_account", "transfer_collateral_to_risk_bucket", "transfer_collateral_to_sub_account", "transfer_rewards", "update_sub_account_limit", "upsert_delegated_agent", "upsert_follow", "upsert_lead_trader", "verify_signature"];
14
14
  /** Union of every OpenAPI operationId in the spec. */
15
15
  export type OperationId = (typeof OPERATION_IDS)[number];
@@ -113,6 +113,7 @@ export const OPERATION_IDS = [
113
113
  "list_follow_leader_positions",
114
114
  "list_funding_history",
115
115
  "list_funding_payments",
116
+ "list_invite_codes",
116
117
  "list_lead_trader_closed_trades",
117
118
  "list_lead_trader_open_positions",
118
119
  "list_lead_traders",
@@ -143,6 +144,7 @@ export const OPERATION_IDS = [
143
144
  "refresh_session",
144
145
  "register_deposit_address",
145
146
  "replace_order",
147
+ "request_invite_codes",
146
148
  "revoke_delegated_agent",
147
149
  "revoke_session",
148
150
  "set_builder_fee",
@@ -1562,6 +1562,51 @@ export interface paths {
1562
1562
  patch?: never;
1563
1563
  trace?: never;
1564
1564
  };
1565
+ "/api/v1/invite-codes": {
1566
+ parameters: {
1567
+ query?: never;
1568
+ header?: never;
1569
+ path?: never;
1570
+ cookie?: never;
1571
+ };
1572
+ /**
1573
+ * List my Mainnet invite codes
1574
+ * @description List the authenticated wallet's invite allowance and the codes it minted.
1575
+ *
1576
+ * Read-only: never mints or consumes an allowance slot, so a client can poll
1577
+ * it to show progress and to recover a code whose mint response was lost.
1578
+ */
1579
+ get: operations["list_invite_codes"];
1580
+ put?: never;
1581
+ post?: never;
1582
+ delete?: never;
1583
+ options?: never;
1584
+ head?: never;
1585
+ patch?: never;
1586
+ trace?: never;
1587
+ };
1588
+ "/api/v1/invite-codes/requests": {
1589
+ parameters: {
1590
+ query?: never;
1591
+ header?: never;
1592
+ path?: never;
1593
+ cookie?: never;
1594
+ };
1595
+ get?: never;
1596
+ put?: never;
1597
+ /**
1598
+ * Mint one Mainnet invite code
1599
+ * @description Mint one invite code from the authenticated wallet's available allowance.
1600
+ * Every active wallet has one initial code plus one per 250,000 USDC of executed
1601
+ * Mainnet USDC volume since the configured launch. Revocation never refunds a slot.
1602
+ */
1603
+ post: operations["request_invite_codes"];
1604
+ delete?: never;
1605
+ options?: never;
1606
+ head?: never;
1607
+ patch?: never;
1608
+ trace?: never;
1609
+ };
1565
1610
  "/api/v1/managed-markets/assignments": {
1566
1611
  parameters: {
1567
1612
  query?: never;
@@ -6575,7 +6620,7 @@ export interface components {
6575
6620
  */
6576
6621
  batchId?: string | null;
6577
6622
  /**
6578
- * @description Stable terminal cause for a cancelled order: USER_REQUESTED, REPLACED, LIQUIDATION, INSUFFICIENT_MARGIN, REDUCE_ONLY_EXHAUSTED, POSITION_CLOSED, OCO_SIBLING_TRIGGERED, SELF_TRADE_PREVENTION, AUTO_DELEVERAGING, PRICE_BAND, SLIPPAGE_TOLERANCE, or SYSTEM. AUTO_DELEVERAGING means auto-deleveraging closed the position your risk bucket held and this resting order was cancelled with it; you were deleveraged as a counterparty, not liquidated. PRICE_BAND means the exchange's protective price band stopped the order and its remainder was cancelled; SLIPPAGE_TOLERANCE means your own slippageToleranceBps did.
6623
+ * @description Stable terminal cause for a cancelled order: USER_REQUESTED, REPLACED, LIQUIDATION, INSUFFICIENT_MARGIN, REDUCE_ONLY_EXHAUSTED, POSITION_CLOSED, OCO_SIBLING_TRIGGERED, SELF_TRADE_PREVENTION, AUTO_DELEVERAGING, PRICE_BAND, SLIPPAGE_TOLERANCE, or SYSTEM. AUTO_DELEVERAGING means auto-deleveraging closed the position your risk bucket held and this resting order was cancelled with it; you were deleveraged as a counterparty, not liquidated. PRICE_BAND means the exchange's protective price band stopped the order and its remainder was cancelled, or, on a resting perp order, that the mark moved the order past the band, where no taker may trade with it; SLIPPAGE_TOLERANCE means your own slippageToleranceBps did.
6579
6624
  * @example REDUCE_ONLY_EXHAUSTED
6580
6625
  */
6581
6626
  terminalReason?: string | null;
@@ -7036,7 +7081,7 @@ export interface components {
7036
7081
  cumFees?: string | null;
7037
7082
  /**
7038
7083
  * Format: int64
7039
- * @description Opaque, non-negative producer-owned version for this position row. Compare only within the same position; higher is newer. 0 is the unranked legacy sentinel and never participates in ordering: treat it exactly as an absent version and fall back to a full field comparison rather than ranking it as oldest. It advances on sequenced position mutations (open, add, reduce, close, funding, margin transfer, liquidation, ADL) and is shared by the persisted read, the WebSocket positions snapshot and a RANKED live position_update frame. Ranked live frames include fills, non-zero funding settlements, terminal closes/liquidations/ADL, direct isolated-position margin adds/reductions, and copy-position margin adds; each uses captured post-command state, and terminal frames retain the stored size and exact CLOSED/LIQUIDATED classification. After restart, a terminal frame rebuilt from legacy reduction history omits the version when that history lacks the margin fields needed to reconstruct complete lifetime allocated margin. Cross-risk-bucket ALLOCATE/RELEASE and copy follow/stop refreshes use margin_added/margin_reduced but omit the version because those commands write no position rows. Wallet IN/OUT and plain isolated allocation send no position frame. Transfer and funding frames use captured post-command state and are released only after durable acknowledgement. mark_price, unrealized_pnl, liquidation_price, leverage, maintenance_margin_required and initial_margin_required are UNVERSIONED valuation fields, re-derived per payload rather than served from the versioned row: the version does not advance for them (five move with the oracle mark; leverage does not, being opening notional over posted margin, but the live surfaces derive it while the persisted row serves its stored column, so it can still disagree at an unchanged version) (a valuation-only oracle tick persists nothing; a state-transitioning one, a breach or recovery, persists the account's snapshot and restamps the positions it changed), so the merge rule is per field group — on an equal version skip the versioned fields but still take all six from the newer payload, because discarding a whole payload on an equal version freezes displayed PnL and can leave a stale margin requirement on screen. isolated_margin is the one exception among the versioned fields: the WebSocket positions snapshot overlays it from an independent live matching-engine read rather than the versioned row, so take it from the newest payload on an equal version too or a consumer can retain stale backing. The version advances exactly when the row's versioned content changed at that sequence, a change undone within one persistence batch included; a position a command left unchanged keeps its version, so a RANKED live frame for an untouched sibling of a filled position can carry a higher version than the persisted row while describing identical content — rank it as newer, and nothing changes. A response served from live matching-engine state reports 0 (unranked): the engine holds the state but not the version.
7084
+ * @description Opaque, non-negative producer-owned version for this position row. Compare only within the same position; higher is newer. 0 is the unranked legacy sentinel and never participates in ordering: treat it exactly as an absent version and fall back to a full field comparison rather than ranking it as oldest. It advances on sequenced position mutations (open, add, reduce, close, funding, margin transfer, liquidation, ADL) and is shared by the persisted read, the WebSocket positions snapshot and a RANKED live position_update frame. Ranked live frames include fills, non-zero funding settlements, terminal closes/liquidations/ADL, direct isolated-position margin adds/reductions, and copy-position margin adds; each uses captured post-command state, and terminal frames retain the stored size and exact CLOSED/LIQUIDATED classification. After restart, a terminal frame rebuilt from legacy reduction history omits the version when that history lacks the margin fields needed to reconstruct complete lifetime allocated margin. Cross-risk-bucket ALLOCATE/RELEASE and copy follow/stop refreshes use margin_added/margin_reduced but omit the version because those commands write no position rows. Wallet IN/OUT and plain isolated allocation send no position frame. Transfer and funding frames use captured post-command state and are released only after durable acknowledgement. mark_price, unrealized_pnl, liquidation_price, leverage, maintenance_margin_required and initial_margin_required are UNVERSIONED valuation fields, re-derived per payload rather than served from the versioned row: the version does not advance for them (five move with the oracle mark; leverage does not, being opening notional over posted margin, but the live surfaces derive it while the persisted row serves its stored column, so it can still disagree at an unchanged version) (a valuation-only oracle tick persists nothing; a state-transitioning one, a breach or recovery, persists the account's snapshot and restamps the positions it changed), so the merge rule is per field group — on an equal version skip the versioned fields but still take all six from the newer payload, because discarding a whole payload on an equal version freezes displayed PnL and can leave a stale margin requirement on screen. A WebSocket positions snapshot row wins an equal-version tie on every field: it is built from live matching-engine state under the persisted row's version, so it can reflect a later command than that version names. Take all of it on an equal version; an equal-version live frame stays an idempotent redelivery. The version advances exactly when the row's versioned content changed at that sequence, a change undone within one persistence batch included; a position a command left unchanged keeps its version, so a RANKED live frame for an untouched sibling of a filled position can carry a higher version than the persisted row while describing identical content — rank it as newer, and nothing changes. A response served from live matching-engine state reports 0 (unranked): the engine holds the state but not the version.
7040
7085
  * @example 918342
7041
7086
  */
7042
7087
  version?: number | null;
@@ -7432,6 +7477,36 @@ export interface components {
7432
7477
  */
7433
7478
  source?: string | null;
7434
7479
  };
7480
+ InviteCode: {
7481
+ /**
7482
+ * Format: uuid
7483
+ * @description Identifier of the code.
7484
+ */
7485
+ codeId?: string | null;
7486
+ /**
7487
+ * Format: int32
7488
+ * @description Allowance slot: 0 for the initial code, N for the Nth 250,000 USDC milestone.
7489
+ * @example 0
7490
+ */
7491
+ milestone?: number | null;
7492
+ /**
7493
+ * @description Lifecycle status: issued, redeemed or revoked.
7494
+ * @example issued
7495
+ */
7496
+ status?: string | null;
7497
+ /** @description The 10-character case-sensitive bearer code, present only while it is issued and unredeemed. Store securely; never log it. */
7498
+ code?: string | null;
7499
+ /**
7500
+ * Format: date-time
7501
+ * @description RFC 3339 time the code was created.
7502
+ */
7503
+ createdAt?: string | null;
7504
+ /**
7505
+ * Format: date-time
7506
+ * @description RFC 3339 time the code was redeemed; absent until then.
7507
+ */
7508
+ redeemedAt?: string | null;
7509
+ };
7435
7510
  /** @description Current followers and the collateral they have allocated. Window-free. */
7436
7511
  LeadTraderFollowSummary: {
7437
7512
  /**
@@ -7942,6 +8017,33 @@ export interface components {
7942
8017
  */
7943
8018
  totalCapped?: boolean | null;
7944
8019
  };
8020
+ ListInviteCodesResponse: {
8021
+ /**
8022
+ * @description Executed Mainnet USDC quote notional since the configured production launch, counting maker and taker wallets at 1 USDC = 1 USD. Zero until volume rewards and the launch timestamp are configured.
8023
+ * @example 250000.00
8024
+ */
8025
+ mainnetVolumeUsd?: string | null;
8026
+ /**
8027
+ * Format: int32
8028
+ * @description Number of completed Mainnet volume milestones of 250,000 USDC each.
8029
+ * @example 1
8030
+ */
8031
+ eligibleMilestones?: number | null;
8032
+ /**
8033
+ * Format: int32
8034
+ * @description One initial code plus the number of completed Mainnet volume milestones of 250,000 USDC each; zero without active Mainnet access.
8035
+ * @example 2
8036
+ */
8037
+ totalAllowance?: number | null;
8038
+ /**
8039
+ * Format: int32
8040
+ * @description Allowance slots not yet minted. Revoked slots remain consumed.
8041
+ * @example 1
8042
+ */
8043
+ availableCodes?: number | null;
8044
+ /** @description Codes this wallet minted or was issued, newest first. */
8045
+ codes?: components["schemas"]["InviteCode"][] | null;
8046
+ };
7945
8047
  ListLeadTraderClosedTradesResponse: {
7946
8048
  closedTrades?: components["schemas"]["ClosedTrade"][] | null;
7947
8049
  /** @description Cursor for the next page; empty when there are no more. */
@@ -9051,7 +9153,7 @@ export interface components {
9051
9153
  cumFees?: string | null;
9052
9154
  /**
9053
9155
  * Format: int64
9054
- * @description Opaque, non-negative producer-owned version for this position row. Compare only within the same position; higher is newer. 0 is the unranked legacy sentinel and never participates in ordering: it means the row predates this field or came from a producer that does not stamp it, so treat it exactly as an absent version and fall back to a full field comparison rather than ranking it as oldest. It advances on sequenced position mutations (open, add, reduce, close, funding, margin transfer, liquidation, ADL) and is shared by the persisted read, the WebSocket positions snapshot and a RANKED live position_update frame. Ranked live frames include fills, non-zero funding settlements, terminal closes/liquidations/ADL, direct isolated-position margin adds/reductions, and copy-position margin adds; each uses captured post-command state, and terminal frames retain the stored size and exact CLOSED/LIQUIDATED classification. After restart, a terminal frame rebuilt from legacy reduction history omits the version when that history lacks the margin fields needed to reconstruct complete lifetime allocated margin. Cross-risk-bucket ALLOCATE/RELEASE and copy follow/stop refreshes use margin_added/margin_reduced but omit the version because those commands write no position rows. Wallet IN/OUT and plain isolated allocation send no position frame. Transfer and funding frames use captured post-command state and are released only after durable acknowledgement. mark_price, unrealized_pnl, liquidation_price, leverage, maintenance_margin_required and initial_margin_required are UNVERSIONED valuation fields, re-derived per payload rather than served from the versioned row: the version does not advance for them (five move with the oracle mark; leverage does not, being opening notional over posted margin, but the live surfaces derive it while the persisted row serves its stored column, so it can still disagree at an unchanged version) (a valuation-only oracle tick persists nothing; a state-transitioning one, a breach or recovery, persists the account's snapshot and restamps the positions it changed), so the merge rule is per field group — on an equal version skip the versioned fields but still take all six from the newer payload, because discarding a whole payload on an equal version freezes displayed PnL and can leave a stale margin requirement on screen. isolated_margin is the one exception among the versioned fields: the WebSocket positions snapshot overlays it from an independent live matching-engine read rather than the versioned row, so take it from the newest payload on an equal version too or a consumer can retain stale backing. The version advances exactly when the row's versioned content changed at that sequence, a change undone within one persistence batch included; a position a command left unchanged keeps its version, so a RANKED live frame for an untouched sibling of a filled position can carry a higher version than the persisted row while describing identical content — rank it as newer, and nothing changes. A response served from live matching-engine state reports 0 (unranked): the engine holds the state but not the version.
9156
+ * @description Opaque, non-negative producer-owned version for this position row. Compare only within the same position; higher is newer. 0 is the unranked legacy sentinel and never participates in ordering: it means the row predates this field or came from a producer that does not stamp it, so treat it exactly as an absent version and fall back to a full field comparison rather than ranking it as oldest. It advances on sequenced position mutations (open, add, reduce, close, funding, margin transfer, liquidation, ADL) and is shared by the persisted read, the WebSocket positions snapshot and a RANKED live position_update frame. Ranked live frames include fills, non-zero funding settlements, terminal closes/liquidations/ADL, direct isolated-position margin adds/reductions, and copy-position margin adds; each uses captured post-command state, and terminal frames retain the stored size and exact CLOSED/LIQUIDATED classification. After restart, a terminal frame rebuilt from legacy reduction history omits the version when that history lacks the margin fields needed to reconstruct complete lifetime allocated margin. Cross-risk-bucket ALLOCATE/RELEASE and copy follow/stop refreshes use margin_added/margin_reduced but omit the version because those commands write no position rows. Wallet IN/OUT and plain isolated allocation send no position frame. Transfer and funding frames use captured post-command state and are released only after durable acknowledgement. mark_price, unrealized_pnl, liquidation_price, leverage, maintenance_margin_required and initial_margin_required are UNVERSIONED valuation fields, re-derived per payload rather than served from the versioned row: the version does not advance for them (five move with the oracle mark; leverage does not, being opening notional over posted margin, but the live surfaces derive it while the persisted row serves its stored column, so it can still disagree at an unchanged version) (a valuation-only oracle tick persists nothing; a state-transitioning one, a breach or recovery, persists the account's snapshot and restamps the positions it changed), so the merge rule is per field group — on an equal version skip the versioned fields but still take all six from the newer payload, because discarding a whole payload on an equal version freezes displayed PnL and can leave a stale margin requirement on screen. A WebSocket positions snapshot row wins an equal-version tie on every field: it is built from live matching-engine state under the persisted row's version, so it can reflect a later command than that version names. Take all of it on an equal version; an equal-version live frame stays an idempotent redelivery. The version advances exactly when the row's versioned content changed at that sequence, a change undone within one persistence batch included; a position a command left unchanged keeps its version, so a RANKED live frame for an untouched sibling of a filled position can carry a higher version than the persisted row while describing identical content — rank it as newer, and nothing changes. A response served from live matching-engine state reports 0 (unranked): the engine holds the state but not the version.
9055
9157
  * @example 918342
9056
9158
  */
9057
9159
  version?: number | null;
@@ -9662,6 +9764,65 @@ export interface components {
9662
9764
  updatedFields?: components["schemas"]["UpdatedFields"];
9663
9765
  matchResult?: components["schemas"]["MatchResult"];
9664
9766
  };
9767
+ RequestInviteCodesRequest: Record<string, never>;
9768
+ RequestInviteCodesResponse: {
9769
+ /**
9770
+ * @description Executed Mainnet USDC quote notional since the configured production launch, counting maker and taker wallets at 1 USDC = 1 USD. Zero until volume rewards and the launch timestamp are configured.
9771
+ * @example 250000.00
9772
+ */
9773
+ mainnetVolumeUsd?: string | null;
9774
+ /**
9775
+ * Format: int32
9776
+ * @description Number of completed Mainnet volume milestones of 250,000 USDC each.
9777
+ * @example 1
9778
+ */
9779
+ eligibleMilestones?: number | null;
9780
+ /**
9781
+ * @description Previously pending milestones, retained for compatibility. Self-service minting creates an issued code immediately.
9782
+ * @example [
9783
+ * 1
9784
+ * ]
9785
+ */
9786
+ pendingMilestones?: number[] | null;
9787
+ /**
9788
+ * @description Issued allowance slots. Slot 0 is the initial code; slot N is the Nth 250,000 USDC volume milestone.
9789
+ * @example []
9790
+ */
9791
+ issuedMilestones?: number[] | null;
9792
+ /**
9793
+ * @description Milestones whose issued code has been redeemed.
9794
+ * @example []
9795
+ */
9796
+ redeemedMilestones?: number[] | null;
9797
+ /**
9798
+ * @description The single allowance slot minted by this call, or an empty array when no allowance remains. Every call may consume the next available slot.
9799
+ * @example [
9800
+ * 0
9801
+ * ]
9802
+ */
9803
+ newlyRequestedMilestones?: number[] | null;
9804
+ /** @description The newly minted 10-character case-sensitive bearer code. Absent when no allowance remains. Store securely; never log it. */
9805
+ code?: string | null;
9806
+ /** @description Identifier of the newly minted code; absent when no allowance remains. */
9807
+ codeId?: string | null;
9808
+ /**
9809
+ * Format: int32
9810
+ * @description Consumed allowance slot: 0 for the initial code, N for the Nth 250,000 USDC milestone.
9811
+ */
9812
+ mintedMilestone?: number | null;
9813
+ /**
9814
+ * Format: int32
9815
+ * @description One initial code plus the number of completed Mainnet volume milestones of 250,000 USDC each.
9816
+ */
9817
+ totalAllowance?: number | null;
9818
+ /**
9819
+ * Format: int32
9820
+ * @description Unconsumed allowance after this call. Revoked slots remain consumed.
9821
+ */
9822
+ availableCodes?: number | null;
9823
+ /** @description Revoked allowance slots; they cannot be minted again. */
9824
+ revokedMilestones?: number[] | null;
9825
+ };
9665
9826
  RevokeDelegatedAgentResponse: {
9666
9827
  /**
9667
9828
  * @description Revocation status
@@ -11383,6 +11544,11 @@ export interface components {
11383
11544
  * @example 0x1234567890abcdef1234567890abcdef12345678
11384
11545
  */
11385
11546
  referralCode?: string | null;
11547
+ /**
11548
+ * @description Optional Mainnet invite code. Exactly 10 case-sensitive ASCII letters or digits. Required while Mainnet Invite Mode is enabled for any wallet without a Mainnet access grant, including existing accounts that never received one; ignored while Invite Mode is off and unnecessary once the wallet has access. A missing code is refused with 403 and code INVITE_CODE_REQUIRED; a wrong, redeemed or revoked code, or an unused code whose issuer is deactivated, with 403 and code INVITE_CODE_INVALID. A deactivated signing account is refused with 403 and code ACCOUNT_DEACTIVATED.
11549
+ * @example aB3dE5gH7J
11550
+ */
11551
+ inviteCode?: string | null;
11386
11552
  };
11387
11553
  VerifyResponse: {
11388
11554
  /**
@@ -13238,7 +13404,7 @@ export interface operations {
13238
13404
  };
13239
13405
  content?: never;
13240
13406
  };
13241
- /** @description Origin not allowed for this application */
13407
+ /** @description Origin not allowed for this application; the account or wallet is deactivated; or Mainnet Invite Mode is on and the wallet has no access grant and supplied no valid invite code. Auth refusals carry a stable code (REST error envelope code; gRPC google.rpc.ErrorInfo reason, domain auth.0xmonaco.com): ACCOUNT_DEACTIVATED for a deactivated signing account, INVITE_CODE_REQUIRED when no code was supplied, and INVITE_CODE_INVALID for a wrong, already redeemed or revoked code, or an unused code whose issuer is deactivated. No account identity or administrative deactivation reason is disclosed. Unused invites become usable again after issuer reactivation */
13242
13408
  403: {
13243
13409
  headers: {
13244
13410
  [name: string]: unknown;
@@ -13252,7 +13418,7 @@ export interface operations {
13252
13418
  };
13253
13419
  content?: never;
13254
13420
  };
13255
- /** @description Authentication rate limit exceeded — challenge and verify share one per-client-address budget (60 requests/min sustained, burst 120), checked before the signature; retry after the interval in details.retryAfter */
13421
+ /** @description Authentication rate limit exceeded — challenge and verify share one per-client-address budget (60 requests/min sustained, burst 120), checked before the signature; or, while Mainnet Invite Mode is on, invite-code attempts from this wallet or client address are in their cooldown. Retry after the interval in details.retryAfter */
13256
13422
  429: {
13257
13423
  headers: {
13258
13424
  [name: string]: unknown;
@@ -13266,7 +13432,7 @@ export interface operations {
13266
13432
  };
13267
13433
  content?: never;
13268
13434
  };
13269
- /** @description Contract-wallet (EIP-1271) verification could not be completed for an eligible address: the chain did not answer, did not answer within the deadline, or the server was at its concurrent-verification capacity and declined to ask. Retryable, and not a verdict on the signature. */
13435
+ /** @description Contract-wallet (EIP-1271) verification could not be completed for an eligible address: the chain did not answer, did not answer within the deadline, or the server was at its concurrent-verification capacity and declined to ask; or an invite code could not be validated now (validation at capacity, or no trusted client address). Retryable, and not a verdict on the signature or the code. */
13270
13436
  503: {
13271
13437
  headers: {
13272
13438
  [name: string]: unknown;
@@ -15222,6 +15388,120 @@ export interface operations {
15222
15388
  };
15223
15389
  };
15224
15390
  };
15391
+ list_invite_codes: {
15392
+ parameters: {
15393
+ query?: never;
15394
+ header?: never;
15395
+ path?: never;
15396
+ cookie?: never;
15397
+ };
15398
+ requestBody?: never;
15399
+ responses: {
15400
+ /** @description OK */
15401
+ 200: {
15402
+ headers: {
15403
+ [name: string]: unknown;
15404
+ };
15405
+ content: {
15406
+ "application/json": components["schemas"]["ListInviteCodesResponse"];
15407
+ };
15408
+ };
15409
+ /** @description Authentication required */
15410
+ 401: {
15411
+ headers: {
15412
+ [name: string]: unknown;
15413
+ };
15414
+ content?: never;
15415
+ };
15416
+ /** @description Delegated-agent sessions cannot read the owner's invite codes; deactivated signing accounts receive ACCOUNT_DEACTIVATED */
15417
+ 403: {
15418
+ headers: {
15419
+ [name: string]: unknown;
15420
+ };
15421
+ content?: never;
15422
+ };
15423
+ /** @description Request rate limit exceeded */
15424
+ 429: {
15425
+ headers: {
15426
+ [name: string]: unknown;
15427
+ };
15428
+ content?: never;
15429
+ };
15430
+ /** @description Internal server error */
15431
+ 500: {
15432
+ headers: {
15433
+ [name: string]: unknown;
15434
+ };
15435
+ content?: never;
15436
+ };
15437
+ /** @description Mainnet invite access is temporarily unavailable */
15438
+ 503: {
15439
+ headers: {
15440
+ [name: string]: unknown;
15441
+ };
15442
+ content?: never;
15443
+ };
15444
+ };
15445
+ };
15446
+ request_invite_codes: {
15447
+ parameters: {
15448
+ query?: never;
15449
+ header?: never;
15450
+ path?: never;
15451
+ cookie?: never;
15452
+ };
15453
+ requestBody: {
15454
+ content: {
15455
+ "application/json": components["schemas"]["RequestInviteCodesRequest"];
15456
+ };
15457
+ };
15458
+ responses: {
15459
+ /** @description OK */
15460
+ 200: {
15461
+ headers: {
15462
+ [name: string]: unknown;
15463
+ };
15464
+ content: {
15465
+ "application/json": components["schemas"]["RequestInviteCodesResponse"];
15466
+ };
15467
+ };
15468
+ /** @description Authentication required */
15469
+ 401: {
15470
+ headers: {
15471
+ [name: string]: unknown;
15472
+ };
15473
+ content?: never;
15474
+ };
15475
+ /** @description Active Mainnet access is required to mint a code; delegated-agent sessions cannot mint the owner's codes; deactivated signing accounts receive ACCOUNT_DEACTIVATED */
15476
+ 403: {
15477
+ headers: {
15478
+ [name: string]: unknown;
15479
+ };
15480
+ content?: never;
15481
+ };
15482
+ /** @description Request rate limit exceeded */
15483
+ 429: {
15484
+ headers: {
15485
+ [name: string]: unknown;
15486
+ };
15487
+ content?: never;
15488
+ };
15489
+ /** @description Internal server error */
15490
+ 500: {
15491
+ headers: {
15492
+ [name: string]: unknown;
15493
+ };
15494
+ content?: never;
15495
+ };
15496
+ /** @description Invite encryption is not configured or generation is temporarily at capacity */
15497
+ 503: {
15498
+ headers: {
15499
+ [name: string]: unknown;
15500
+ };
15501
+ content?: never;
15502
+ };
15503
+ };
15504
+ };
15225
15505
  list_managed_market_assignments: {
15226
15506
  parameters: {
15227
15507
  query?: {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@0xmonaco/types",
3
- "version": "1.0.83",
3
+ "version": "1.0.85",
4
4
  "type": "module",
5
5
  "homepage": "https://docs.0xmonaco.com/sdk/typescript",
6
6
  "main": "./dist/index.js",
@@ -16,7 +16,7 @@
16
16
  "lint": "biome lint ."
17
17
  },
18
18
  "dependencies": {
19
- "@0xmonaco/contracts": "1.0.83",
19
+ "@0xmonaco/contracts": "1.0.85",
20
20
  "zod": "^4.1.12"
21
21
  },
22
22
  "peerDependencies": {