@0xmonaco/types 1.0.86 → 1.0.88

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.
@@ -717,33 +717,42 @@ export interface paths {
717
717
  };
718
718
  get?: never;
719
719
  /**
720
- * Set your builder fee
721
- * @description Set this application's builder fee.
720
+ * Set your builder fees
721
+ * @description Set this application's builder fees.
722
722
  *
723
723
  * The builder fee is an additional taker fee, in basis points, that this
724
- * frontend charges its own users on top of Monaco's fee. The application is
725
- * taken from the authenticated session; the caller must be the application's
726
- * BuilderCodes payout wallet, and delegated-agent sessions are refused.
724
+ * frontend charges its own users on top of Monaco's fee when their order
725
+ * fills as the taker. The maker add-on is the same for a user's order that
726
+ * fills as the maker: it is paid by the maker on top of Monaco's maker fee or
727
+ * rebate. The application is taken from the authenticated session; the
728
+ * caller must be the application's BuilderCodes payout wallet, and
729
+ * delegated-agent sessions are refused.
727
730
  *
728
- * `bps` must be between 0 and the current builder-fee cap
729
- * (`builderFeeCapBps` on `GetBuildercodesConfig`) inclusive. The application
730
- * must be enrolled in BuilderCodes with a payout address. At most two changes
731
- * are allowed in any rolling 24 hours; changes Monaco makes on the
732
- * application's behalf do not count. Setting the fee it already has is a
733
- * no-op that succeeds and does not use up a change.
731
+ * `bps` (taker) is required. `makerBps` is optional; omitting it leaves the
732
+ * maker add-on unchanged. Each must be between 0 and the current builder-fee
733
+ * cap (`builderFeeCapBps` on `GetBuildercodesConfig`) inclusive; the cap and
734
+ * the switches are shared by both sides. The application must be enrolled in
735
+ * BuilderCodes with a payout address. At most two changes are allowed in any
736
+ * rolling 24 hours, and one call that sets both sides is one change; changes
737
+ * Monaco makes on the application's behalf do not count. Setting the values
738
+ * it already has is a no-op that succeeds and does not use up a change.
734
739
  *
735
- * The fee can be set while the revenue share or builder fees are switched
736
- * on, and is refused (**HTTP 403** / **PERMISSION_DENIED**) while both are
737
- * off. With builder fees off (`builderFeeEnabled` false) it is stored and
738
- * nothing is charged until they are switched on. A newly stored fee reaches order requests within a few
739
- * seconds. Sequencer ordering is authoritative for matching-engine policy and
740
- * enrollment state: an order processed before one of those sequenced changes
741
- * uses the earlier state, and a later order uses the new state.
740
+ * The fees can be set while the revenue share or builder fees are switched
741
+ * on, and are refused (**HTTP 403** / **PERMISSION_DENIED**) while both are
742
+ * off. With builder fees off (`builderFeeEnabled` false) they are stored and
743
+ * nothing is charged until they are switched on. A newly stored taker fee
744
+ * reaches order requests within a few seconds. A newly stored maker add-on
745
+ * applies to orders placed after the matching engine's next BuilderCodes
746
+ * enrollment refresh, shortly after it is saved; an order resting on the book
747
+ * keeps the maker add-on in force when it was placed. Sequencer ordering is
748
+ * authoritative for matching-engine policy and enrollment state: an order
749
+ * processed before one of those sequenced changes uses the earlier state, and
750
+ * a later order uses the new state.
742
751
  *
743
752
  * A refused change is **HTTP 409** / **FAILED_PRECONDITION** when the
744
753
  * application is not enrolled with a payout address or has no changes left
745
754
  * (REST adds `details.nextChangeAllowedAt`), and **HTTP 400** /
746
- * **INVALID_ARGUMENT** when `bps` is above the cap.
755
+ * **INVALID_ARGUMENT** when `bps` or `makerBps` is above the cap.
747
756
  */
748
757
  put: operations["set_builder_fee"];
749
758
  post?: never;
@@ -765,7 +774,8 @@ export interface paths {
765
774
  * @description List this application's builder-fee changes.
766
775
  *
767
776
  * Newest first, cursor-paginated. Includes every change to this
768
- * application's builder fee: those its payout wallet made (`BUILDER`) and
777
+ * application's builder fees (taker and maker add-on, one row per change):
778
+ * those its payout wallet made (`BUILDER`) and
769
779
  * those Monaco made on its behalf (`ADMIN`). The application is taken from
770
780
  * the authenticated session.
771
781
  */
@@ -2749,277 +2759,6 @@ export interface paths {
2749
2759
  patch?: never;
2750
2760
  trace?: never;
2751
2761
  };
2752
- "/api/v1/pitpass/codes/available": {
2753
- parameters: {
2754
- query?: never;
2755
- header?: never;
2756
- path?: never;
2757
- cookie?: never;
2758
- };
2759
- /**
2760
- * Check custom TraderCode availability (deprecated PitPass path)
2761
- * @deprecated
2762
- * @description Check custom-handle availability (public, advisory).
2763
- *
2764
- * Unauthenticated as-you-type check for a custom handle: returns `available`
2765
- * plus, when unavailable, a snake_case `reason` code. Advisory only — the
2766
- * authoritative gate is the atomic claim in SetTraderCode — so a positive
2767
- * result never reserves the handle.
2768
- */
2769
- get: operations["pitpass_check_trader_code_availability"];
2770
- put?: never;
2771
- post?: never;
2772
- delete?: never;
2773
- options?: never;
2774
- head?: never;
2775
- patch?: never;
2776
- trace?: never;
2777
- };
2778
- "/api/v1/pitpass/codes/me": {
2779
- parameters: {
2780
- query?: never;
2781
- header?: never;
2782
- path?: never;
2783
- cookie?: never;
2784
- };
2785
- /**
2786
- * Get your TraderCode (deprecated PitPass path)
2787
- * @deprecated
2788
- * @description Claim your TraderCode.
2789
- *
2790
- * Get your TraderCode.
2791
- *
2792
- * Return the authenticated caller's TraderCode, which is derived from their
2793
- * wallet address (rendered `Monaco - <address>` by clients). Never 404s — the
2794
- * code always exists for a signed-in wallet — and ensures the backing row so
2795
- * referrals attributed to this wallet have a code to link.
2796
- */
2797
- get: operations["pitpass_get_my_trader_code"];
2798
- put?: never;
2799
- post?: never;
2800
- delete?: never;
2801
- options?: never;
2802
- head?: never;
2803
- patch?: never;
2804
- trace?: never;
2805
- };
2806
- "/api/v1/pitpass/codes/me/custom": {
2807
- parameters: {
2808
- query?: never;
2809
- header?: never;
2810
- path?: never;
2811
- cookie?: never;
2812
- };
2813
- get?: never;
2814
- /**
2815
- * Claim or edit your custom TraderCode (deprecated PitPass path)
2816
- * @deprecated
2817
- * @description Claim or edit your custom TraderCode handle.
2818
- *
2819
- * Single claim-or-edit entry point: set the authenticated caller's custom
2820
- * vanity handle (a `[A-Za-z0-9_]`, letter-first, 5–20-char name), keeping the
2821
- * permanent wallet-derived code as the reward identity. The first claim is
2822
- * free; subsequent changes are rate-limited and release the freed handle into
2823
- * a cooldown before anyone else can reclaim it. Case is preserved on store;
2824
- * uniqueness is case-insensitive. Gated by the `custom_trader_codes_enabled`
2825
- * feature flag. Returns the caller's updated TraderCode identity.
2826
- */
2827
- put: operations["pitpass_set_trader_code"];
2828
- post?: never;
2829
- /**
2830
- * Clear your custom TraderCode (deprecated PitPass path)
2831
- * @deprecated
2832
- * @description Clear your custom TraderCode handle.
2833
- *
2834
- * Revert the authenticated caller to their wallet-derived default, releasing
2835
- * the freed handle into cooldown. A no-op (returns the current default) when
2836
- * no custom handle is set. Like an edit, a clear counts against the
2837
- * rolling-hour rate-limit. Gated by the `custom_trader_codes_enabled` feature
2838
- * flag.
2839
- */
2840
- delete: operations["pitpass_clear_trader_code"];
2841
- options?: never;
2842
- head?: never;
2843
- patch?: never;
2844
- trace?: never;
2845
- };
2846
- "/api/v1/pitpass/codes/{code}": {
2847
- parameters: {
2848
- query?: never;
2849
- header?: never;
2850
- path?: never;
2851
- cookie?: never;
2852
- };
2853
- /**
2854
- * Look up a TraderCode (deprecated PitPass path)
2855
- * @deprecated
2856
- * @description Look up a TraderCode (public).
2857
- *
2858
- * Public, unauthenticated lookup used to validate a referral code at signup.
2859
- * The code is a wallet address; returns the normalized code when it resolves
2860
- * to a known wallet. Returns 404 when the code does not resolve to a user.
2861
- */
2862
- get: operations["pitpass_get_trader_code_info"];
2863
- put?: never;
2864
- post?: never;
2865
- delete?: never;
2866
- options?: never;
2867
- head?: never;
2868
- patch?: never;
2869
- trace?: never;
2870
- };
2871
- "/api/v1/pitpass/referrals/me": {
2872
- parameters: {
2873
- query?: never;
2874
- header?: never;
2875
- path?: never;
2876
- cookie?: never;
2877
- };
2878
- /**
2879
- * Get your referral position (deprecated PitPass path)
2880
- * @deprecated
2881
- * @description Read your own referral position (self-scoped).
2882
- *
2883
- * Return the authenticated caller's referral position: their referral chain
2884
- * upward (L1, L2 and onward — who referred them, who referred that wallet, and
2885
- * so on, as many levels as their trades on this client application pay), the
2886
- * total rewards they have earned, and their most recent reward rows.
2887
- * Self-scoped — identity comes only from the session, never a path id,
2888
- * so a caller can only ever read their own chain. Every other user is
2889
- * identified by their public wallet address, never an internal id. An empty
2890
- * `referrer` means the caller was not referred.
2891
- */
2892
- get: operations["pitpass_get_my_referral_position"];
2893
- put?: never;
2894
- post?: never;
2895
- delete?: never;
2896
- options?: never;
2897
- head?: never;
2898
- patch?: never;
2899
- trace?: never;
2900
- };
2901
- "/api/v1/pitpass/referrals/me/downline": {
2902
- parameters: {
2903
- query?: never;
2904
- header?: never;
2905
- path?: never;
2906
- cookie?: never;
2907
- };
2908
- /**
2909
- * Get your referral downline and earnings (deprecated PitPass path)
2910
- * @deprecated
2911
- * @description Read your own downline earnings (self-scoped).
2912
- *
2913
- * Return who the authenticated caller earns from and how much: one page of
2914
- * the earnings-by-source breakdown across every reward level, their L1
2915
- * direct-referee roster (including referees who have not traded yet), and a
2916
- * per-level earnings summary that always covers every level and source,
2917
- * whatever page is requested. `earnings_by_source` is paged (`page_size`,
2918
- * `page_token`); a request without them gets the first page, not every row.
2919
- * Self-scoped — identity comes only from the session, never a path id. Every
2920
- * source and referee is identified by their public wallet address, never an
2921
- * internal id.
2922
- */
2923
- get: operations["pitpass_get_my_referral_downline"];
2924
- put?: never;
2925
- post?: never;
2926
- delete?: never;
2927
- options?: never;
2928
- head?: never;
2929
- patch?: never;
2930
- trace?: never;
2931
- };
2932
- "/api/v1/pitpass/referrals/me/tree": {
2933
- parameters: {
2934
- query?: never;
2935
- header?: never;
2936
- path?: never;
2937
- cookie?: never;
2938
- };
2939
- /**
2940
- * Get one level of your referral tree (deprecated PitPass path)
2941
- * @deprecated
2942
- * @description Read one level of your own referral tree (self-scoped).
2943
- *
2944
- * Return the wallets directly referred by `parent` — the authenticated caller
2945
- * when `parent` is omitted, otherwise one of the caller's own referees above
2946
- * the deepest rewarded level — one page at a time, newest first. Each node carries its level
2947
- * relative to the caller, its parent, how many wallets it has referred (so the
2948
- * client knows whether it can be expanded), and what the caller has earned
2949
- * from that wallet's own trades. Expanding a node is another call with
2950
- * `parent` set to that node's wallet; the tree always lists the caller's
2951
- * direct referees (L1) and goes as deep as any client application rewards,
2952
- * at most 10 levels.
2953
- *
2954
- * Self-scoped — identity comes only from the session. A `parent` that is not
2955
- * the caller or a referee the caller can expand returns 404, the same
2956
- * as a wallet that does not exist, so the endpoint cannot be used to read
2957
- * anyone else's tree. Every node is identified by its public wallet address,
2958
- * never an internal id.
2959
- */
2960
- get: operations["pitpass_get_my_referral_tree"];
2961
- put?: never;
2962
- post?: never;
2963
- delete?: never;
2964
- options?: never;
2965
- head?: never;
2966
- patch?: never;
2967
- trace?: never;
2968
- };
2969
- "/api/v1/pitpass/rewards/balance": {
2970
- parameters: {
2971
- query?: never;
2972
- header?: never;
2973
- path?: never;
2974
- cookie?: never;
2975
- };
2976
- /**
2977
- * Get your rewards balance (deprecated PitPass path)
2978
- * @deprecated
2979
- * @description Read accrued TraderCodes rewards balance.
2980
- *
2981
- * Return the caller's current rewards-bucket balances across all reward tokens.
2982
- * Rewards accumulate here as referred users trade; call TransferRewards to move
2983
- * them into a tradeable balance. Returns an empty list when no rewards have
2984
- * been earned yet.
2985
- */
2986
- get: operations["pitpass_get_rewards_balance"];
2987
- put?: never;
2988
- post?: never;
2989
- delete?: never;
2990
- options?: never;
2991
- head?: never;
2992
- patch?: never;
2993
- trace?: never;
2994
- };
2995
- "/api/v1/pitpass/rewards/transfer": {
2996
- parameters: {
2997
- query?: never;
2998
- header?: never;
2999
- path?: never;
3000
- cookie?: never;
3001
- };
3002
- get?: never;
3003
- put?: never;
3004
- /**
3005
- * Transfer rewards into a trading balance (deprecated PitPass path)
3006
- * @deprecated
3007
- * @description Transfer earned rewards into a trading balance.
3008
- *
3009
- * Move spendable TraderCodes reward balance from your rewards bucket into a
3010
- * trading balance under the authenticated application, making it tradeable
3011
- * immediately. Ledger-only (one shared vault + one backend ledger) — no
3012
- * on-chain transaction and no gas. Fails with 409 when the rewards balance is
3013
- * insufficient. It spends the per-user movement budget withdrawals and
3014
- * collateral transfers share.
3015
- */
3016
- post: operations["pitpass_transfer_rewards"];
3017
- delete?: never;
3018
- options?: never;
3019
- head?: never;
3020
- patch?: never;
3021
- trace?: never;
3022
- };
3023
2762
  "/api/v1/positions": {
3024
2763
  parameters: {
3025
2764
  query?: never;
@@ -4193,7 +3932,7 @@ export interface components {
4193
3932
  };
4194
3933
  BatchCreateError: {
4195
3934
  /**
4196
- * @description Machine-readable error code. ORDER_SUBMISSION_CAPACITY_EXCEEDED refuses a new keyed submission when response-cache capacity is protected by pending durability or persistence. ORDER_SUBMISSION_UNAVAILABLE means the original response is temporarily unavailable or keyed admission is busy; it never authorizes duplicate execution. Retry the same key and payload; the 24-hour limit applies only to previously accepted keys.
3935
+ * @description Machine-readable error code. ORDER_SUBMISSION_CAPACITY_EXCEEDED refuses a new keyed submission when response-cache capacity is protected by pending durability or persistence. ORDER_SUBMISSION_UNAVAILABLE means the original response is temporarily unavailable or keyed admission is busy; it never authorizes duplicate execution. Retry the same key and payload; the 15-minute limit applies only to previously accepted keys.
4197
3936
  * @example INSUFFICIENT_BALANCE
4198
3937
  */
4199
3938
  code?: string | null;
@@ -4311,7 +4050,7 @@ export interface components {
4311
4050
  * @example quote-btc-1130-a
4312
4051
  */
4313
4052
  clientOrderId?: string | null;
4314
- /** @description Optional submission identity, distinct from clientOrderId. Use 1-64 characters from [A-Za-z0-9._:-], without whitespace. Scoped to your authenticated user/subaccount and application, shared by create and batch-create items. Retrying the same key and normalized order payload within 24 hours of the original acceptance returns the original committed submission result, even after a fill or cancellation, without executing again. A full response cache does not prevent new keyed submissions: durable responses may be evicted while exact key history remains retained. If response capacity is protected by pending durability or persistence, a new key is refused with ORDER_SUBMISSION_CAPACITY_EXCEEDED. A retry whose original response cannot currently be retrieved returns ORDER_SUBMISSION_UNAVAILABLE and never executes again. Both are HTTP 503 / gRPC UNAVAILABLE, or per-item errors in batches. Retry the same key and payload; for previously accepted keys, stay within 24 hours of the original acceptance. A capacity refusal does not accept or reserve a new key. Different payload returns IDEMPOTENCY_KEY_CONFLICT (HTTP 409 / gRPC ALREADY_EXISTS; per-item error in batches). Validation failures before acceptance do not reserve the key. The window does not extend on retries; after it expires the key may execute a new order, so never retry an unresolved submission after 24 hours. Generate a fresh key for each intended new order and retain it across transport retries. Without a key, a timeout or 5xx leaves the outcome unknown and must not be blindly retried. */
4053
+ /** @description Optional submission identity, distinct from clientOrderId. Use 1-64 characters from [A-Za-z0-9._:-], without whitespace. Scoped to your authenticated user/subaccount and application, shared by create and batch-create items. Retrying the same key and normalized order payload within 15 minutes of the original acceptance returns the original committed submission result, even after a fill or cancellation, without executing again. A full response cache does not prevent new keyed submissions: durable responses may be evicted while exact key history remains retained. If response capacity is protected by pending durability or persistence, a new key is refused with ORDER_SUBMISSION_CAPACITY_EXCEEDED. A retry whose original response cannot currently be retrieved returns ORDER_SUBMISSION_UNAVAILABLE and never executes again. Both are HTTP 503 / gRPC UNAVAILABLE, or per-item errors in batches. Retry the same key and payload; for previously accepted keys, stay within 15 minutes of the original acceptance. A capacity refusal does not accept or reserve a new key. Different payload returns IDEMPOTENCY_KEY_CONFLICT (HTTP 409 / gRPC ALREADY_EXISTS; per-item error in batches). Validation failures before acceptance do not reserve the key. The window does not extend on retries; after it expires the key may execute a new order, so never retry an unresolved submission after 15 minutes. Generate a fresh key for each intended new order and retain it across transport retries. Without a key, a timeout or 5xx leaves the outcome unknown and must not be blindly retried. */
4315
4054
  idempotencyKey?: string | null;
4316
4055
  /**
4317
4056
  * @description Per-order self-trade-prevention override: how the engine resolves this order matching against one of your own resting orders (your whole wallet family, subaccounts included; the incoming order's mode governs the step and resting orders' modes are never consulted). CANCEL_MAKER cancels each of your resting orders encountered and keeps matching. CANCEL_TAKER fills third-party liquidity up to the first self-touch, then cancels the incoming order's remainder — a zero-fill CANCELLED outcome is possible. CANCEL_BOTH additionally cancels the encountered resting orders. SKIP trades around your resting orders; a remainder that would rest crossing one of your surviving orders is cancelled instead of resting. Omitted, your wallet's configured default applies, else the platform default CANCEL_MAKER. STP cancellations carry terminalReason SELF_TRADE_PREVENTION and stpCounterpartyOrderId on reads and WebSocket events. With time_in_force FOK: CANCEL_MAKER cancels your makers first and then fills or kills; CANCEL_TAKER and SKIP cancel the whole order when self is in the fill path; CANCEL_BOTH fails only this item with a per-item SELF_TRADE_NOT_ALLOWED error — the batch itself still returns 2xx / OK. An unknown value likewise fails only this item, with error.code INVALID_SELF_TRADE_PREVENTION_MODE. The requested value is echoed back as selfTradePreventionMode on order reads, absent when omitted here.
@@ -4475,6 +4214,18 @@ export interface components {
4475
4214
  * @description RFC 3339 time of the change.
4476
4215
  */
4477
4216
  createdAt?: string | null;
4217
+ /**
4218
+ * Format: uint32
4219
+ * @description Maker add-on before the change, in basis points. Equal to `newMakerBps` when the change left it unchanged.
4220
+ * @example 0
4221
+ */
4222
+ oldMakerBps?: number | null;
4223
+ /**
4224
+ * Format: uint32
4225
+ * @description Maker add-on after the change, in basis points.
4226
+ * @example 5
4227
+ */
4228
+ newMakerBps?: number | null;
4478
4229
  };
4479
4230
  BuildercodePayout: {
4480
4231
  /**
@@ -4499,7 +4250,7 @@ export interface components {
4499
4250
  amount?: string | null;
4500
4251
  /**
4501
4252
  * Format: int32
4502
- * @description Basis-point rate applied to this credit. For `BUILDER_FEE`, this is the normalized builder-fee rate charged to the taker. For `REVENUE_SHARE`, it is the realized whole-basis-point rate for that fill and can be lower than the configured BuilderCodes budget.
4253
+ * @description Basis-point rate applied to this credit. For `BUILDER_FEE`, this is the normalized builder-fee rate charged to the taker. For `BUILDER_MAKER_FEE`, it is the maker add-on rate the maker order stored when it was placed. For `REVENUE_SHARE`, it is the realized whole-basis-point rate for that fill and can be lower than the configured BuilderCodes budget.
4503
4254
  * @example 1000
4504
4255
  */
4505
4256
  appliedBps?: number | null;
@@ -4509,11 +4260,11 @@ export interface components {
4509
4260
  */
4510
4261
  createdAt?: string | null;
4511
4262
  /**
4512
- * @description Payout category for this credit: `REVENUE_SHARE` for Monaco revenue sharing or `BUILDER_FEE` for an ordinary builder fee charged to the taker.
4263
+ * @description Payout category for this credit: `REVENUE_SHARE` for Monaco revenue sharing, `BUILDER_FEE` for a builder fee charged to the taker, or `BUILDER_MAKER_FEE` for a maker add-on charged to the maker.
4513
4264
  * @example REVENUE_SHARE
4514
4265
  * @enum {string|null}
4515
4266
  */
4516
- kind?: "REVENUE_SHARE" | "BUILDER_FEE" | null;
4267
+ kind?: "REVENUE_SHARE" | "BUILDER_FEE" | "BUILDER_MAKER_FEE" | null;
4517
4268
  };
4518
4269
  BuildercodePayoutTokenKindTotal: {
4519
4270
  /**
@@ -4522,11 +4273,11 @@ export interface components {
4522
4273
  */
4523
4274
  token?: string | null;
4524
4275
  /**
4525
- * @description Payout stream these totals cover: `REVENUE_SHARE` or `BUILDER_FEE`.
4276
+ * @description Payout stream these totals cover: `REVENUE_SHARE`, `BUILDER_FEE` or `BUILDER_MAKER_FEE`.
4526
4277
  * @example REVENUE_SHARE
4527
4278
  * @enum {string|null}
4528
4279
  */
4529
- kind?: "REVENUE_SHARE" | "BUILDER_FEE" | null;
4280
+ kind?: "REVENUE_SHARE" | "BUILDER_FEE" | "BUILDER_MAKER_FEE" | null;
4530
4281
  /**
4531
4282
  * @description Summed credits of this kind in RAW atomic units of this token.
4532
4283
  * @example 5000000
@@ -5122,7 +4873,7 @@ export interface components {
5122
4873
  * @example quote-btc-1130-a
5123
4874
  */
5124
4875
  clientOrderId?: string | null;
5125
- /** @description Optional submission identity, distinct from clientOrderId. Use 1-64 characters from [A-Za-z0-9._:-], without whitespace. Scoped to your authenticated user/subaccount and application, shared by create and batch-create items. Retrying the same key and normalized order payload within 24 hours of the original acceptance returns the original committed submission result, even after a fill or cancellation, without executing again. A full response cache does not prevent new keyed submissions: durable responses may be evicted while exact key history remains retained. If response capacity is protected by pending durability or persistence, a new key is refused with ORDER_SUBMISSION_CAPACITY_EXCEEDED. A retry whose original response cannot currently be retrieved returns ORDER_SUBMISSION_UNAVAILABLE and never executes again. Both are HTTP 503 / gRPC UNAVAILABLE, or per-item errors in batches. Retry the same key and payload; for previously accepted keys, stay within 24 hours of the original acceptance. A capacity refusal does not accept or reserve a new key. Different payload returns IDEMPOTENCY_KEY_CONFLICT (HTTP 409 / gRPC ALREADY_EXISTS; per-item error in batches). Validation failures before acceptance do not reserve the key. The window does not extend on retries; after it expires the key may execute a new order, so never retry an unresolved submission after 24 hours. Generate a fresh key for each intended new order and retain it across transport retries. Without a key, a timeout or 5xx leaves the outcome unknown and must not be blindly retried. */
4876
+ /** @description Optional submission identity, distinct from clientOrderId. Use 1-64 characters from [A-Za-z0-9._:-], without whitespace. Scoped to your authenticated user/subaccount and application, shared by create and batch-create items. Retrying the same key and normalized order payload within 15 minutes of the original acceptance returns the original committed submission result, even after a fill or cancellation, without executing again. A full response cache does not prevent new keyed submissions: durable responses may be evicted while exact key history remains retained. If response capacity is protected by pending durability or persistence, a new key is refused with ORDER_SUBMISSION_CAPACITY_EXCEEDED. A retry whose original response cannot currently be retrieved returns ORDER_SUBMISSION_UNAVAILABLE and never executes again. Both are HTTP 503 / gRPC UNAVAILABLE, or per-item errors in batches. Retry the same key and payload; for previously accepted keys, stay within 15 minutes of the original acceptance. A capacity refusal does not accept or reserve a new key. Different payload returns IDEMPOTENCY_KEY_CONFLICT (HTTP 409 / gRPC ALREADY_EXISTS; per-item error in batches). Validation failures before acceptance do not reserve the key. The window does not extend on retries; after it expires the key may execute a new order, so never retry an unresolved submission after 15 minutes. Generate a fresh key for each intended new order and retain it across transport retries. Without a key, a timeout or 5xx leaves the outcome unknown and must not be blindly retried. */
5126
4877
  idempotencyKey?: string | null;
5127
4878
  /**
5128
4879
  * @description Per-order self-trade-prevention override: how the engine resolves this order matching against one of your own resting orders (your whole wallet family, subaccounts included; the incoming order's mode governs the step and resting orders' modes are never consulted). CANCEL_MAKER cancels each of your resting orders encountered and keeps matching. CANCEL_TAKER fills third-party liquidity up to the first self-touch, then cancels the incoming order's remainder — a zero-fill CANCELLED outcome is possible. CANCEL_BOTH additionally cancels the encountered resting orders. SKIP trades around your resting orders; a remainder that would rest crossing one of your surviving orders is cancelled instead of resting. Omitted, your wallet's configured default applies, else the platform default CANCEL_MAKER. STP cancellations carry terminalReason SELF_TRADE_PREVENTION and stpCounterpartyOrderId on reads and WebSocket events. With time_in_force FOK: CANCEL_MAKER cancels your makers first and then fills or kills; CANCEL_TAKER and SKIP cancel the whole order when self is in the fill path; CANCEL_BOTH rejects the placement with SELF_TRADE_NOT_ALLOWED. The requested value is echoed back as selfTradePreventionMode on order reads, absent when omitted here.
@@ -5726,7 +5477,7 @@ export interface components {
5726
5477
  */
5727
5478
  takerFee?: string | null;
5728
5479
  /**
5729
- * @description Application revenue share from taker fees (normalized, in human-readable quote token units)
5480
+ * @description Builder fees this application charged its users as takers (normalized, in human-readable quote token units). Taker side only; see `applicationMakerFee` and `builderFeeTotal`
5730
5481
  * @example 5.67
5731
5482
  */
5732
5483
  applicationTakerFee?: string | null;
@@ -5735,6 +5486,16 @@ export interface components {
5735
5486
  * @example 42
5736
5487
  */
5737
5488
  tradeCount?: string | null;
5489
+ /**
5490
+ * @description Maker add-ons this application charged its users as makers, on trades where its user's order was the maker (normalized, in human-readable quote token units)
5491
+ * @example 1.23
5492
+ */
5493
+ applicationMakerFee?: string | null;
5494
+ /**
5495
+ * @description This application's total builder-fee revenue: `applicationTakerFee` plus `applicationMakerFee` (normalized, in human-readable quote token units)
5496
+ * @example 6.90
5497
+ */
5498
+ builderFeeTotal?: string | null;
5738
5499
  };
5739
5500
  GetAvailableCollateralResponse: {
5740
5501
  asset?: string | null;
@@ -5871,6 +5632,8 @@ export interface components {
5871
5632
  byToken?: components["schemas"]["BuildercodePayoutTokenTotal"][] | null;
5872
5633
  /** @description The same totals split by token AND payout kind. One row per (token, kind) pair with at least one credit; a token's rows sum to its `byToken` total. Empty when this application has no payouts. */
5873
5634
  byTokenAndKind?: components["schemas"]["BuildercodePayoutTokenKindTotal"][] | null;
5635
+ /** @description Per-token builder-fee totals: the `BUILDER_FEE` and `BUILDER_MAKER_FEE` rows of `byTokenAndKind` summed per token, without the revenue share. One row per token with at least one builder-fee credit. Empty when this application has none. */
5636
+ builderFeeByToken?: components["schemas"]["BuildercodePayoutTokenTotal"][] | null;
5874
5637
  };
5875
5638
  GetBuildercodeRewardsBalanceResponse: {
5876
5639
  /** @description One entry per reward token with a non-zero available balance. */
@@ -5922,8 +5685,14 @@ export interface components {
5922
5685
  * @description RFC 3339 time at which the next builder-fee change becomes allowed, or null while `changesRemaining` is above 0.
5923
5686
  */
5924
5687
  nextChangeAllowedAt?: string | null;
5925
- };
5926
- /** @description OHLCV candlestick data. */
5688
+ /**
5689
+ * Format: uint32
5690
+ * @description This application's stored maker add-on in basis points: the additional fee it charges its users when their order fills as the maker, on top of Monaco's maker fee or rebate. Charged under the same cap and switches as `builderFeeBps`; an order stores the rate in force when it was placed and is charged that rate when it fills.
5691
+ * @example 0
5692
+ */
5693
+ builderMakerFeeBps?: number | null;
5694
+ };
5695
+ /** @description OHLCV candlestick data. */
5927
5696
  GetCandlesResponse: {
5928
5697
  candles?: components["schemas"]["Candle"][] | null;
5929
5698
  };
@@ -10068,6 +9837,12 @@ export interface components {
10068
9837
  * @example 10
10069
9838
  */
10070
9839
  bps: number;
9840
+ /**
9841
+ * Format: uint32
9842
+ * @description New maker add-on in basis points, from 0 up to the current `builderFeeCapBps` inclusive. Omit to leave the maker add-on unchanged; 0 stops charging one. It applies to orders placed after the matching engine's next BuilderCodes enrollment refresh, shortly after it is saved, and never to an order already resting.
9843
+ * @example 5
9844
+ */
9845
+ makerBps?: number | null;
10071
9846
  };
10072
9847
  SetBuilderFeeResponse: {
10073
9848
  /**
@@ -10093,6 +9868,18 @@ export interface components {
10093
9868
  * @description RFC 3339 time at which the next builder-fee change becomes allowed, or null while `changesRemaining` is above 0.
10094
9869
  */
10095
9870
  nextChangeAllowedAt?: string | null;
9871
+ /**
9872
+ * Format: uint32
9873
+ * @description The maker add-on now stored, in basis points. It applies to orders placed after the matching engine's next BuilderCodes enrollment refresh, shortly after it is saved; orders already resting keep the rate they were placed with.
9874
+ * @example 5
9875
+ */
9876
+ builderMakerFeeBps?: number | null;
9877
+ /**
9878
+ * Format: uint32
9879
+ * @description The maker add-on this change replaced, in basis points. Equal to `builderMakerFeeBps` when the request left it unchanged.
9880
+ * @example 0
9881
+ */
9882
+ previousBuilderMakerFeeBps?: number | null;
10096
9883
  };
10097
9884
  SetSelfTradePreventionDefaultRequest: {
10098
9885
  /**
@@ -10140,7 +9927,7 @@ export interface components {
10140
9927
  */
10141
9928
  takerTotalPayment?: string | null;
10142
9929
  /**
10143
- * @description Total amount received by maker (notional - rebate)
9930
+ * @description Total amount received if this order fills as the maker: notional minus the Monaco maker fee (so a rebate adds) minus `applicationMakerFee`
10144
9931
  * @example 19995.00
10145
9932
  */
10146
9933
  makerTotalReceipt?: string | null;
@@ -10200,6 +9987,17 @@ export interface components {
10200
9987
  * @example -1
10201
9988
  */
10202
9989
  monacoMakerRebateBpsExact?: string | null;
9990
+ /**
9991
+ * @description Application maker add-on in quote token if this order fills as the maker: the frontend's own fee, paid by the maker on top of the Monaco maker fee or rebate. 0 when the application charges none
9992
+ * @example 1.00
9993
+ */
9994
+ applicationMakerFee?: string | null;
9995
+ /**
9996
+ * Format: int32
9997
+ * @description Application maker add-on rate in basis points: the rate an order placed now would store, under the same cap and switches as `applicationTakerFeeBps`
9998
+ * @example 0
9999
+ */
10000
+ applicationMakerFeeBps?: number | null;
10203
10001
  };
10204
10002
  SimulateOrderRiskRequest: {
10205
10003
  /** @description Margin account UUID for the isolated bucket being simulated. */
@@ -11495,7 +11293,8 @@ export interface components {
11495
11293
  /**
11496
11294
  * @description Total fee this user paid on the trade, in raw quote units: for a taker,
11497
11295
  * Monaco's taker fee plus the frontend's builder fee; for a maker, the maker
11498
- * fee (negative for a rebate). Equals `monaco_fee + builder_fee`.
11296
+ * fee (negative for a rebate) plus the frontend's maker add-on. Equals
11297
+ * `monaco_fee + builder_fee`.
11499
11298
  */
11500
11299
  fee?: string | null;
11501
11300
  realizedPnl?: string | null;
@@ -11503,8 +11302,9 @@ export interface components {
11503
11302
  /** @description Monaco's component of `fee`, in raw quote units. */
11504
11303
  monacoFee?: string | null;
11505
11304
  /**
11506
- * @description The frontend's builder fee component of `fee`, in raw quote units. Always
11507
- * "0" for a maker: builder fees are charged to takers only.
11305
+ * @description The frontend's builder fee component of `fee`, in raw quote units: for a
11306
+ * taker, the builder fee; for a maker, the maker add-on, charged at the rate
11307
+ * the order stored when it was placed. "0" when the frontend charges none.
11508
11308
  */
11509
11309
  builderFee?: string | null;
11510
11310
  };
@@ -11540,7 +11340,7 @@ export interface components {
11540
11340
  */
11541
11341
  sessionPublicKey: string;
11542
11342
  /**
11543
- * @description Optional TraderCode captured at signup (e.g. from a `?ref=CODE` link). When a user verifies for the very first time with a valid code, a referral relationship is recorded atomically. Ignored for users who already exist, and silently ignored if the code is unknown — a bad code never blocks sign-in.
11343
+ * @description Optional TraderCode captured at signup (e.g. from a `?ref=CODE` link). When a user verifies for the very first time with a valid code, a referral relationship is recorded atomically. Ignored for users who already exist. A code that does not apply (unknown, the wallet's own, or a different referrer than the one the wallet already has) never blocks sign-in; `VerifyResponse.referral_not_applied_reason` says why.
11544
11344
  * @example 0x1234567890abcdef1234567890abcdef12345678
11545
11345
  */
11546
11346
  referralCode?: string | null;
@@ -11564,10 +11364,18 @@ export interface components {
11564
11364
  */
11565
11365
  isNewUser?: boolean | null;
11566
11366
  /**
11567
- * @description True when a TraderCodes referral relationship was recorded on this verify: a valid, non-self TraderCode presented on the wallet's first sign-in to THIS application resolved to a known referrer. Scoped like `is_new_user` (per `(wallet, application)`), so a wallet already registered on another application can still see this on its first sign-in to a new one. False for a returning user of this application, an absent or unknown code, or a self-referral. Confirms the referral landed for the signup success screen.
11367
+ * @description True when a TraderCodes referral relationship was recorded on this verify: a valid, non-self TraderCode presented on the wallet's first sign-in to THIS application resolved to a known referrer. Scoped like `is_new_user` (per `(wallet, application)`), so a wallet already registered on another application can still see this on its first sign-in to a new one. False for a returning user of this application, an absent or unknown code, a self-referral, or a wallet that already has a different referrer (see `referral_not_applied_reason`). Confirms the referral landed for the signup success screen.
11568
11368
  * @example true
11569
11369
  */
11570
11370
  referralApplied?: boolean | null;
11371
+ /**
11372
+ * Format: enum
11373
+ * @description Why the TraderCode presented on this sign-up did not apply. Absent when it
11374
+ * applied, when no code was presented, and for a returning user of this
11375
+ * application.
11376
+ * @enum {string|null}
11377
+ */
11378
+ referralNotAppliedReason?: "REFERRAL_NOT_APPLIED_REASON_UNSPECIFIED" | "REFERRAL_NOT_APPLIED_REASON_ALREADY_REFERRED" | "REFERRAL_NOT_APPLIED_REASON_UNKNOWN_CODE" | "REFERRAL_NOT_APPLIED_REASON_SELF_REFERRAL" | null;
11571
11379
  };
11572
11380
  Withdrawal: {
11573
11381
  /**
@@ -13463,7 +13271,7 @@ export interface operations {
13463
13271
  "application/json": components["schemas"]["SetBuilderFeeResponse"];
13464
13272
  };
13465
13273
  };
13466
- /** @description bps is above the current builder-fee cap (gRPC: INVALID_ARGUMENT) */
13274
+ /** @description bps or makerBps is above the current builder-fee cap (gRPC: INVALID_ARGUMENT) */
13467
13275
  400: {
13468
13276
  headers: {
13469
13277
  [name: string]: unknown;
@@ -13663,8 +13471,8 @@ export interface operations {
13663
13471
  * token, or the request is rejected 400.
13664
13472
  */
13665
13473
  pageToken?: string;
13666
- /** @description Only return BuilderCodes payouts of this payout kind: REVENUE_SHARE (the frontend's share of Monaco's fee) or BUILDER_FEE (ordinary builder fees charged to takers and credited to enrolled applications). Omit for every kind. */
13667
- kind?: "REVENUE_SHARE" | "BUILDER_FEE";
13474
+ /** @description Only return BuilderCodes payouts of this payout kind: REVENUE_SHARE (the frontend's share of Monaco's fee), BUILDER_FEE (builder fees charged to takers) or BUILDER_MAKER_FEE (maker add-ons charged to makers). Both builder-fee kinds are credited to the enrolled application whose order paid them. Omit for every kind. */
13475
+ kind?: "REVENUE_SHARE" | "BUILDER_FEE" | "BUILDER_MAKER_FEE";
13668
13476
  };
13669
13477
  header?: never;
13670
13478
  path?: never;
@@ -17015,7 +16823,7 @@ export interface operations {
17015
16823
  };
17016
16824
  content?: never;
17017
16825
  };
17018
- /** @description Keyed order submission temporarily unavailable; retry the same key and payload. For previously accepted keys, retry only within 24 hours of the original acceptance. A capacity refusal does not accept or reserve a new key. */
16826
+ /** @description Keyed order submission temporarily unavailable; retry the same key and payload. For previously accepted keys, retry only within 15 minutes of the original acceptance. A capacity refusal does not accept or reserve a new key. */
17019
16827
  503: {
17020
16828
  headers: {
17021
16829
  [name: string]: unknown;
@@ -17938,488 +17746,6 @@ export interface operations {
17938
17746
  };
17939
17747
  };
17940
17748
  };
17941
- pitpass_check_trader_code_availability: {
17942
- parameters: {
17943
- query?: {
17944
- code?: string;
17945
- };
17946
- header?: never;
17947
- path?: never;
17948
- cookie?: never;
17949
- };
17950
- requestBody?: never;
17951
- responses: {
17952
- /** @description OK */
17953
- 200: {
17954
- headers: {
17955
- [name: string]: unknown;
17956
- };
17957
- content: {
17958
- "application/json": components["schemas"]["CheckTraderCodeAvailabilityResponse"];
17959
- };
17960
- };
17961
- /** @description Availability check rate-limit exceeded */
17962
- 429: {
17963
- headers: {
17964
- [name: string]: unknown;
17965
- };
17966
- content?: never;
17967
- };
17968
- /** @description Internal server error */
17969
- 500: {
17970
- headers: {
17971
- [name: string]: unknown;
17972
- };
17973
- content?: never;
17974
- };
17975
- };
17976
- };
17977
- pitpass_get_my_trader_code: {
17978
- parameters: {
17979
- query?: never;
17980
- header?: never;
17981
- path?: never;
17982
- cookie?: never;
17983
- };
17984
- requestBody?: never;
17985
- responses: {
17986
- /** @description OK */
17987
- 200: {
17988
- headers: {
17989
- [name: string]: unknown;
17990
- };
17991
- content: {
17992
- "application/json": components["schemas"]["TraderCodeResponse"];
17993
- };
17994
- };
17995
- /** @description Authentication required */
17996
- 401: {
17997
- headers: {
17998
- [name: string]: unknown;
17999
- };
18000
- content?: never;
18001
- };
18002
- /** @description Read rate limit exceeded — every authenticated read draws one request from the account's read budget; retry after the interval in details.retryAfter */
18003
- 429: {
18004
- headers: {
18005
- [name: string]: unknown;
18006
- };
18007
- content?: never;
18008
- };
18009
- /** @description Internal server error */
18010
- 500: {
18011
- headers: {
18012
- [name: string]: unknown;
18013
- };
18014
- content?: never;
18015
- };
18016
- };
18017
- };
18018
- pitpass_set_trader_code: {
18019
- parameters: {
18020
- query?: never;
18021
- header?: never;
18022
- path?: never;
18023
- cookie?: never;
18024
- };
18025
- requestBody: {
18026
- content: {
18027
- "application/json": components["schemas"]["SetTraderCodeRequest"];
18028
- };
18029
- };
18030
- responses: {
18031
- /** @description OK */
18032
- 200: {
18033
- headers: {
18034
- [name: string]: unknown;
18035
- };
18036
- content: {
18037
- "application/json": components["schemas"]["TraderCodeResponse"];
18038
- };
18039
- };
18040
- /** @description Authentication required */
18041
- 401: {
18042
- headers: {
18043
- [name: string]: unknown;
18044
- };
18045
- content?: never;
18046
- };
18047
- /** @description Custom trader codes are not enabled */
18048
- 403: {
18049
- headers: {
18050
- [name: string]: unknown;
18051
- };
18052
- content?: never;
18053
- };
18054
- /** @description Handle is taken (case-insensitive) or cooling down */
18055
- 409: {
18056
- headers: {
18057
- [name: string]: unknown;
18058
- };
18059
- content?: never;
18060
- };
18061
- /** @description Validation failed; body carries a reason code */
18062
- 422: {
18063
- headers: {
18064
- [name: string]: unknown;
18065
- };
18066
- content?: never;
18067
- };
18068
- /** @description Edit rate-limit exceeded */
18069
- 429: {
18070
- headers: {
18071
- [name: string]: unknown;
18072
- };
18073
- content?: never;
18074
- };
18075
- /** @description Internal server error */
18076
- 500: {
18077
- headers: {
18078
- [name: string]: unknown;
18079
- };
18080
- content?: never;
18081
- };
18082
- };
18083
- };
18084
- pitpass_clear_trader_code: {
18085
- parameters: {
18086
- query?: never;
18087
- header?: never;
18088
- path?: never;
18089
- cookie?: never;
18090
- };
18091
- requestBody?: never;
18092
- responses: {
18093
- /** @description OK */
18094
- 200: {
18095
- headers: {
18096
- [name: string]: unknown;
18097
- };
18098
- content: {
18099
- "application/json": components["schemas"]["TraderCodeResponse"];
18100
- };
18101
- };
18102
- /** @description Authentication required */
18103
- 401: {
18104
- headers: {
18105
- [name: string]: unknown;
18106
- };
18107
- content?: never;
18108
- };
18109
- /** @description Custom trader codes are not enabled */
18110
- 403: {
18111
- headers: {
18112
- [name: string]: unknown;
18113
- };
18114
- content?: never;
18115
- };
18116
- /** @description Edit rate-limit exceeded */
18117
- 429: {
18118
- headers: {
18119
- [name: string]: unknown;
18120
- };
18121
- content?: never;
18122
- };
18123
- /** @description Internal server error */
18124
- 500: {
18125
- headers: {
18126
- [name: string]: unknown;
18127
- };
18128
- content?: never;
18129
- };
18130
- };
18131
- };
18132
- pitpass_get_trader_code_info: {
18133
- parameters: {
18134
- query?: never;
18135
- header?: never;
18136
- path: {
18137
- /** @example 0x742d35cc6634c0532925a3b8d4060f31e2c3d8b5 */
18138
- code: string;
18139
- };
18140
- cookie?: never;
18141
- };
18142
- requestBody?: never;
18143
- responses: {
18144
- /** @description OK */
18145
- 200: {
18146
- headers: {
18147
- [name: string]: unknown;
18148
- };
18149
- content: {
18150
- "application/json": components["schemas"]["GetTraderCodeInfoResponse"];
18151
- };
18152
- };
18153
- /** @description Code not found */
18154
- 404: {
18155
- headers: {
18156
- [name: string]: unknown;
18157
- };
18158
- content?: never;
18159
- };
18160
- /** @description Internal server error */
18161
- 500: {
18162
- headers: {
18163
- [name: string]: unknown;
18164
- };
18165
- content?: never;
18166
- };
18167
- };
18168
- };
18169
- pitpass_get_my_referral_position: {
18170
- parameters: {
18171
- query?: never;
18172
- header?: never;
18173
- path?: never;
18174
- cookie?: never;
18175
- };
18176
- requestBody?: never;
18177
- responses: {
18178
- /** @description OK */
18179
- 200: {
18180
- headers: {
18181
- [name: string]: unknown;
18182
- };
18183
- content: {
18184
- "application/json": components["schemas"]["GetMyReferralPositionResponse"];
18185
- };
18186
- };
18187
- /** @description Authentication required */
18188
- 401: {
18189
- headers: {
18190
- [name: string]: unknown;
18191
- };
18192
- content?: never;
18193
- };
18194
- /** @description Read rate limit exceeded — every authenticated read draws one request from the account's read budget; retry after the interval in details.retryAfter */
18195
- 429: {
18196
- headers: {
18197
- [name: string]: unknown;
18198
- };
18199
- content?: never;
18200
- };
18201
- /** @description Internal server error */
18202
- 500: {
18203
- headers: {
18204
- [name: string]: unknown;
18205
- };
18206
- content?: never;
18207
- };
18208
- };
18209
- };
18210
- pitpass_get_my_referral_downline: {
18211
- parameters: {
18212
- query?: {
18213
- /** @description `earningsBySource` rows per page (max 500) */
18214
- pageSize?: number;
18215
- /**
18216
- * @description Opaque cursor from a previous response's `nextPageToken`; omit or send an
18217
- * empty string for the first page.
18218
- */
18219
- pageToken?: string;
18220
- };
18221
- header?: never;
18222
- path?: never;
18223
- cookie?: never;
18224
- };
18225
- requestBody?: never;
18226
- responses: {
18227
- /** @description OK */
18228
- 200: {
18229
- headers: {
18230
- [name: string]: unknown;
18231
- };
18232
- content: {
18233
- "application/json": components["schemas"]["GetMyReferralDownlineResponse"];
18234
- };
18235
- };
18236
- /** @description Authentication required */
18237
- 401: {
18238
- headers: {
18239
- [name: string]: unknown;
18240
- };
18241
- content?: never;
18242
- };
18243
- /** @description Read rate limit exceeded — every authenticated read draws one request from the account's read budget; retry after the interval in details.retryAfter */
18244
- 429: {
18245
- headers: {
18246
- [name: string]: unknown;
18247
- };
18248
- content?: never;
18249
- };
18250
- /** @description Internal server error */
18251
- 500: {
18252
- headers: {
18253
- [name: string]: unknown;
18254
- };
18255
- content?: never;
18256
- };
18257
- };
18258
- };
18259
- pitpass_get_my_referral_tree: {
18260
- parameters: {
18261
- query?: {
18262
- parent?: string;
18263
- /** @description Nodes per page (max 200) */
18264
- pageSize?: number;
18265
- /**
18266
- * @description Opaque cursor from a previous response's `nextPageToken`; omit or send an
18267
- * empty string for the first page. Only valid with the same `parent`.
18268
- */
18269
- pageToken?: string;
18270
- };
18271
- header?: never;
18272
- path?: never;
18273
- cookie?: never;
18274
- };
18275
- requestBody?: never;
18276
- responses: {
18277
- /** @description OK */
18278
- 200: {
18279
- headers: {
18280
- [name: string]: unknown;
18281
- };
18282
- content: {
18283
- "application/json": components["schemas"]["GetMyReferralTreeResponse"];
18284
- };
18285
- };
18286
- /** @description Invalid `parent` wallet address, `pageSize`, or `pageToken` */
18287
- 400: {
18288
- headers: {
18289
- [name: string]: unknown;
18290
- };
18291
- content?: never;
18292
- };
18293
- /** @description Authentication required */
18294
- 401: {
18295
- headers: {
18296
- [name: string]: unknown;
18297
- };
18298
- content?: never;
18299
- };
18300
- /** @description `parent` is not the caller or one of the caller's own expandable referees */
18301
- 404: {
18302
- headers: {
18303
- [name: string]: unknown;
18304
- };
18305
- content?: never;
18306
- };
18307
- /** @description Read rate limit exceeded — every authenticated read draws one request from the account's read budget; retry after the interval in details.retryAfter */
18308
- 429: {
18309
- headers: {
18310
- [name: string]: unknown;
18311
- };
18312
- content?: never;
18313
- };
18314
- /** @description Internal server error */
18315
- 500: {
18316
- headers: {
18317
- [name: string]: unknown;
18318
- };
18319
- content?: never;
18320
- };
18321
- };
18322
- };
18323
- pitpass_get_rewards_balance: {
18324
- parameters: {
18325
- query?: never;
18326
- header?: never;
18327
- path?: never;
18328
- cookie?: never;
18329
- };
18330
- requestBody?: never;
18331
- responses: {
18332
- /** @description OK */
18333
- 200: {
18334
- headers: {
18335
- [name: string]: unknown;
18336
- };
18337
- content: {
18338
- "application/json": components["schemas"]["GetRewardsBalanceResponse"];
18339
- };
18340
- };
18341
- /** @description Authentication required */
18342
- 401: {
18343
- headers: {
18344
- [name: string]: unknown;
18345
- };
18346
- content?: never;
18347
- };
18348
- /** @description Read rate limit exceeded — every authenticated read draws one request from the account's read budget; retry after the interval in details.retryAfter */
18349
- 429: {
18350
- headers: {
18351
- [name: string]: unknown;
18352
- };
18353
- content?: never;
18354
- };
18355
- /** @description Internal server error */
18356
- 500: {
18357
- headers: {
18358
- [name: string]: unknown;
18359
- };
18360
- content?: never;
18361
- };
18362
- };
18363
- };
18364
- pitpass_transfer_rewards: {
18365
- parameters: {
18366
- query?: never;
18367
- header?: never;
18368
- path?: never;
18369
- cookie?: never;
18370
- };
18371
- requestBody: {
18372
- content: {
18373
- "application/json": components["schemas"]["TransferRewardsRequest"];
18374
- };
18375
- };
18376
- responses: {
18377
- /** @description OK */
18378
- 200: {
18379
- headers: {
18380
- [name: string]: unknown;
18381
- };
18382
- content: {
18383
- "application/json": components["schemas"]["TransferRewardsResponse"];
18384
- };
18385
- };
18386
- /** @description Invalid token or amount */
18387
- 400: {
18388
- headers: {
18389
- [name: string]: unknown;
18390
- };
18391
- content?: never;
18392
- };
18393
- /** @description Authentication required */
18394
- 401: {
18395
- headers: {
18396
- [name: string]: unknown;
18397
- };
18398
- content?: never;
18399
- };
18400
- /** @description Insufficient rewards balance */
18401
- 409: {
18402
- headers: {
18403
- [name: string]: unknown;
18404
- };
18405
- content?: never;
18406
- };
18407
- /** @description Movement rate limit exceeded — withdrawals, collateral transfers and reward transfers share a per-user budget; retry after the interval in details.retryAfter */
18408
- 429: {
18409
- headers: {
18410
- [name: string]: unknown;
18411
- };
18412
- content?: never;
18413
- };
18414
- /** @description Internal server error */
18415
- 500: {
18416
- headers: {
18417
- [name: string]: unknown;
18418
- };
18419
- content?: never;
18420
- };
18421
- };
18422
- };
18423
17749
  list_positions: {
18424
17750
  parameters: {
18425
17751
  query?: {