@stable_sea/sdk 0.2.40 → 0.2.42

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.
@@ -629,7 +629,7 @@ export interface paths {
629
629
  put?: never;
630
630
  /**
631
631
  * Place an order
632
- * @description Creates an order for the authenticated business and returns it as `pending`. A fund order must name the `network` it settles on, `ethereum` or `stellar`; the API never applies a business's default network. A business that has turned that network off, or is not eligible for it, gets a failed order with a `failure_code` naming why. BTC orders require both `investments:write` and `investments:btc_write`, use standard settlement and settle on no network, so they must not name one. The BTC quote is indicative; execution uses the current native price and fees. Execution is asynchronous and uses the same authorization checks and trading engine as Terminal. Retrieve the order to follow it through `executing` to `filled` or `failed`.
632
+ * @description Creates an order for the authenticated business and returns it as `pending`. A fund order must name the `network` it settles on, `ethereum`, `stellar` or `solana`; the API never applies a business's default network. A business that has turned that network off, or is not eligible for it, gets a failed order with a `failure_code` naming why. BTC orders require both `investments:write` and `investments:btc_write`, use standard settlement and settle on no network, so they must not name one. The BTC quote is indicative; execution uses the current native price and fees. Execution is asynchronous and uses the same authorization checks and trading engine as Terminal. Retrieve the order to follow it through `executing` to `filled` or `failed`.
633
633
  *
634
634
  * Fund orders check the quoted NAV at execution. Price changes and insufficient express liquidity can cause execution to fail. The failed order includes a reason. While the quote remains valid, an express refusal can be submitted as a new standard order.
635
635
  *
@@ -974,6 +974,180 @@ export interface paths {
974
974
  patch?: never;
975
975
  trace?: never;
976
976
  };
977
+ "/v1/swap_estimates": {
978
+ parameters: {
979
+ query?: never;
980
+ header?: never;
981
+ path?: never;
982
+ cookie?: never;
983
+ };
984
+ get?: never;
985
+ put?: never;
986
+ /**
987
+ * Create a swap estimate
988
+ * @description Prices one stablecoin swap in the business's Go Account at an indicative rate, without asking the provider for a binding quote and without moving or reserving anything. Poll until status is ready: result states the amounts, rate and fee, and refusal_reason names the first check a firm quote would fail, except the provider's own balance, which only a quote checks. An estimate the checks cannot price is failed with failure_code: money_movement_type_disabled, swap_request_invalid or swap_route_unavailable, or credential_unavailable (the key was revoked or lost its grant or platform access), kyb_approval_required, terms_acceptance_required, business_archived, business_under_maintenance (the business is locked), compliance_restriction_in_force (the buy or sell privilege for the asset sent is restricted), and execution_unavailable when repeated transient failures, such as ledger_projection_unavailable or a briefly unavailable dependency, exhaust its retries.
989
+ *
990
+ * Requires money:swaps_write and an Idempotency-Key. The credential acts for the business: the swap's direction needs no member permission, and the business's current switch, KYB, agreements, compliance restrictions, custody, limits and balances are checked when the worker runs it. Reuse the same key and body after a lost response to recover the original request. A business with 20 unfinished swap estimates, quotes and swaps in this mode is refused with 429 rate_limited, which consumes no key; retry once some complete.
991
+ */
992
+ post: operations["swap_estimates.create"];
993
+ delete?: never;
994
+ options?: never;
995
+ head?: never;
996
+ patch?: never;
997
+ trace?: never;
998
+ };
999
+ "/v1/swap_estimates/{id}": {
1000
+ parameters: {
1001
+ query?: never;
1002
+ header?: never;
1003
+ path?: never;
1004
+ cookie?: never;
1005
+ };
1006
+ /**
1007
+ * Retrieve a swap estimate
1008
+ * @description Returns a swap estimate belonging to this business and API mode. An estimate is indicative and binds nothing.
1009
+ */
1010
+ get: operations["swap_estimates.get"];
1011
+ put?: never;
1012
+ post?: never;
1013
+ delete?: never;
1014
+ options?: never;
1015
+ head?: never;
1016
+ patch?: never;
1017
+ trace?: never;
1018
+ };
1019
+ "/v1/swap_quotes": {
1020
+ parameters: {
1021
+ query?: never;
1022
+ header?: never;
1023
+ path?: never;
1024
+ cookie?: never;
1025
+ };
1026
+ get?: never;
1027
+ put?: never;
1028
+ /**
1029
+ * Create a swap quote
1030
+ * @description Asks the provider for a firm quote for one stablecoin swap in the business's Go Account and freezes the business's swap fee. No money moves. Poll until status is ready, then submit the quote to POST /v1/swaps before expires_ts; firm quotes live for at most a minute, so submit promptly. Every check runs before the quote is ready; a refused quote is failed with the check's failure_code: money_movement_type_disabled, swap_request_invalid, swap_custody_mode_unsupported, swap_amount_too_small, swap_amount_too_large, movement_limit_exceeded (the swap daily limit), insufficient_balance, swap_provider_balance_unsettled (quotes and swaps only), swap_rate_out_of_bounds, swap_route_unavailable. It can also fail with credential_unavailable (the key was revoked or lost its grant or platform access), kyb_approval_required, terms_acceptance_required, business_archived, business_under_maintenance (the business is locked), compliance_restriction_in_force (the buy or sell privilege for the asset sent is restricted), and execution_unavailable when repeated transient failures, such as ledger_projection_unavailable or a briefly unavailable dependency, exhaust its retries.
1031
+ *
1032
+ * Requires money:swaps_write and an Idempotency-Key. The credential acts for the business: the swap's direction needs no member permission, and the business's current switch, KYB, agreements, compliance restrictions, custody, limits and balances are checked when the worker runs it. Reuse the same key and body after a lost response to recover the original request. A business with 20 unfinished swap estimates, quotes and swaps in this mode is refused with 429 rate_limited, which consumes no key; retry once some complete.
1033
+ */
1034
+ post: operations["swap_quotes.create"];
1035
+ delete?: never;
1036
+ options?: never;
1037
+ head?: never;
1038
+ patch?: never;
1039
+ trace?: never;
1040
+ };
1041
+ "/v1/swap_quotes/{id}": {
1042
+ parameters: {
1043
+ query?: never;
1044
+ header?: never;
1045
+ path?: never;
1046
+ cookie?: never;
1047
+ };
1048
+ /**
1049
+ * Retrieve a swap quote
1050
+ * @description Returns a swap quote belonging to this business and API mode. Its expiry is fixed when it becomes ready and does not move when it is read again.
1051
+ */
1052
+ get: operations["swap_quotes.get"];
1053
+ put?: never;
1054
+ post?: never;
1055
+ delete?: never;
1056
+ options?: never;
1057
+ head?: never;
1058
+ patch?: never;
1059
+ trace?: never;
1060
+ };
1061
+ "/v1/swap_routes": {
1062
+ parameters: {
1063
+ query?: never;
1064
+ header?: never;
1065
+ path?: never;
1066
+ cookie?: never;
1067
+ };
1068
+ /**
1069
+ * Read swap routes
1070
+ * @description Reports whether swaps are enabled for the authenticated business and, when they are, each swap route: its assets, the least and most a swap sends, the business's swap fee rate and the available Go Account balance of each asset. Requires `money:read`.
1071
+ *
1072
+ * Observations are refreshed in the background and are served for at most one minute; missing or expired observations return 503. They do not authorize a swap: every check runs again when an estimate, quote or swap executes. Test keys read their isolated sandbox business.
1073
+ */
1074
+ get: operations["swap_routes.snapshot"];
1075
+ put?: never;
1076
+ post?: never;
1077
+ delete?: never;
1078
+ options?: never;
1079
+ head?: never;
1080
+ patch?: never;
1081
+ trace?: never;
1082
+ };
1083
+ "/v1/swap_submissions": {
1084
+ parameters: {
1085
+ query?: never;
1086
+ header?: never;
1087
+ path?: never;
1088
+ cookie?: never;
1089
+ };
1090
+ /**
1091
+ * Find a swap by its idempotency key
1092
+ * @description Finds the swap a POST /v1/swaps request created under an Idempotency-Key, after a timeout or a lost response. It never executes or retries anything. Keys are shared by the business within one API mode, across credentials and rotation, and are kept with the swap. A 404 means no swap request was accepted under the key in this mode.
1093
+ */
1094
+ get: operations["swap_submissions.get"];
1095
+ put?: never;
1096
+ post?: never;
1097
+ delete?: never;
1098
+ options?: never;
1099
+ head?: never;
1100
+ patch?: never;
1101
+ trace?: never;
1102
+ };
1103
+ "/v1/swaps": {
1104
+ parameters: {
1105
+ query?: never;
1106
+ header?: never;
1107
+ path?: never;
1108
+ cookie?: never;
1109
+ };
1110
+ /**
1111
+ * List swaps
1112
+ * @description Lists this business's API swaps in this mode, newest first. Paginate with one swap ID cursor at a time. Swaps members make in the business app appear in transaction history, not here.
1113
+ */
1114
+ get: operations["swaps.list"];
1115
+ put?: never;
1116
+ /**
1117
+ * Create a swap
1118
+ * @description Queues the execution of a ready swap quote in the business's Go Account. Every check the quote ran runs again, then the business must not be archived or locked and must have signed its agreements. A quote books once, and only while the execution starts before its expires_ts: queue delay can still produce quote_expired. A swap that fails before booking releases its quote for a new request. Follow status to completed or failed; transaction_id names the swap's transaction once it is booked. A swap that fails after booking moved no money unless its transaction shows otherwise.
1119
+ *
1120
+ * A swap refused before booking is failed with failure_code: quote_expired, swap_quote_used, quote_not_found, contracts_not_signed, go_account_not_provisioned, funds_in_transit, balance_pending_settlement, the quote's check codes (money_movement_type_disabled, swap_request_invalid, swap_custody_mode_unsupported, swap_amount_too_small, swap_amount_too_large, movement_limit_exceeded (the swap daily limit), insufficient_balance, swap_provider_balance_unsettled (quotes and swaps only), swap_rate_out_of_bounds, swap_route_unavailable), or credential_unavailable (the key was revoked or lost its grant or platform access), kyb_approval_required, terms_acceptance_required, business_archived, business_under_maintenance (the business is locked), compliance_restriction_in_force (the buy or sell privilege for the asset sent is restricted), and execution_unavailable when repeated transient failures, such as ledger_projection_unavailable or a briefly unavailable dependency, exhaust its retries. At acceptance, a quote that is not ready is 400 swap_request_invalid, an expired one 400 quote_expired, one with a live or booked swap 409 swap_quote_used, and another business's 404.
1121
+ *
1122
+ * Requires money:swaps_write and an Idempotency-Key. The credential acts for the business: the swap's direction needs no member permission, and the business's current switch, KYB, agreements, compliance restrictions, custody, limits and balances are checked when the worker runs it. Reuse the same key and body after a lost response to recover the original request. A business with 20 unfinished swap estimates, quotes and swaps in this mode is refused with 429 rate_limited, which consumes no key; retry once some complete. After a lost response, GET /v1/swap_submissions also finds the swap by its key. Never execute the quote again under a new key.
1123
+ */
1124
+ post: operations["swaps.create"];
1125
+ delete?: never;
1126
+ options?: never;
1127
+ head?: never;
1128
+ patch?: never;
1129
+ trace?: never;
1130
+ };
1131
+ "/v1/swaps/{id}": {
1132
+ parameters: {
1133
+ query?: never;
1134
+ header?: never;
1135
+ path?: never;
1136
+ cookie?: never;
1137
+ };
1138
+ /**
1139
+ * Retrieve a swap
1140
+ * @description Returns one swap and, once booked, its transaction and current outcome. A swap belonging to another business or API mode is not found.
1141
+ */
1142
+ get: operations["swaps.get"];
1143
+ put?: never;
1144
+ post?: never;
1145
+ delete?: never;
1146
+ options?: never;
1147
+ head?: never;
1148
+ patch?: never;
1149
+ trace?: never;
1150
+ };
977
1151
  "/v1/trading_pathways": {
978
1152
  parameters: {
979
1153
  query?: never;
@@ -2043,7 +2217,7 @@ export interface components {
2043
2217
  observed_ts: string;
2044
2218
  };
2045
2219
  /** @enum {string} */
2046
- HTTPAPIVersion: "2026-10-16";
2220
+ HTTPAPIVersion: "2026-10-26";
2047
2221
  List: {
2048
2222
  data: components["schemas"]["Resource"][];
2049
2223
  has_more: boolean;
@@ -2120,7 +2294,7 @@ export interface components {
2120
2294
  * @description The network the order settles on, as the request named it. Null for BTC, which settles on no network.
2121
2295
  * @enum {string|null}
2122
2296
  */
2123
- network: "ethereum" | "stellar" | null;
2297
+ network: "ethereum" | "stellar" | "solana" | null;
2124
2298
  /** @enum {string} */
2125
2299
  object: "order";
2126
2300
  quoted_price: string;
@@ -2146,10 +2320,10 @@ export interface components {
2146
2320
  */
2147
2321
  funding_method?: "balance" | "wire";
2148
2322
  /**
2149
- * @description The network a fund order settles on. Required for a fund order and refused for BTC, which settles on no network. The API never applies a business's default network.
2323
+ * @description The network a fund order settles on. Required for a fund order and refused for BTC, which settles on no network. The API never applies a business's default network. Solana settles a standard WTGXX buy or sell for a business in the WisdomTree Solana program and its Solana deposit rollout. A Solana order that cannot settle for any other reason fails with network_not_eligible, and one waiting on the business's Solana wallet stays pending and is retried.
2150
2324
  * @enum {string}
2151
2325
  */
2152
- network?: "ethereum" | "stellar";
2326
+ network?: "ethereum" | "stellar" | "solana";
2153
2327
  /** @description The price_per_unit from GET /v1/quotes. Fund execution checks the NAV; BTC uses an indicative price and executes at the current native price. */
2154
2328
  quoted_price: string;
2155
2329
  /**
@@ -2852,6 +3026,204 @@ export interface components {
2852
3026
  fee: string;
2853
3027
  paid_to_bank: string;
2854
3028
  };
3029
+ Swap: {
3030
+ /** Format: date-time */
3031
+ created_ts: string;
3032
+ failure_code?: string;
3033
+ id: string;
3034
+ livemode: boolean;
3035
+ /** @enum {string} */
3036
+ object: "swap";
3037
+ quote_id: string;
3038
+ /** @enum {string} */
3039
+ status: "pending" | "processing" | "completed" | "failed";
3040
+ /** @description The swap's transaction once it is booked; null before. Its legs carry the amounts actually sent, received and charged. */
3041
+ transaction_id: string | null;
3042
+ };
3043
+ SwapAssetAmount: {
3044
+ amount: string;
3045
+ /** @enum {string} */
3046
+ asset: "USDC" | "USDT";
3047
+ };
3048
+ /** @enum {string} */
3049
+ SwapAssetName: "USDC" | "USDT";
3050
+ SwapEstimate: {
3051
+ amount: string;
3052
+ /** @enum {string} */
3053
+ amount_side: "send" | "receive";
3054
+ /** Format: date-time */
3055
+ created_ts: string;
3056
+ failure_code?: string;
3057
+ /** @enum {string} */
3058
+ from_asset: "USDC" | "USDT";
3059
+ id: string;
3060
+ livemode: boolean;
3061
+ /** @enum {string} */
3062
+ object: "swap_estimate";
3063
+ result: components["schemas"]["SwapEstimateResult"];
3064
+ /** @enum {string} */
3065
+ route: "ethereum_usdc_usdt";
3066
+ /** @enum {string} */
3067
+ status: "pending" | "ready" | "failed";
3068
+ /** @enum {string} */
3069
+ to_asset: "USDC" | "USDT";
3070
+ };
3071
+ SwapEstimateInput: {
3072
+ /** @description The fixed amount on amount_side: a positive decimal with at most six places. */
3073
+ amount: string;
3074
+ /**
3075
+ * @description Which amount is fixed. send, the default, fixes the amount of from_asset sent; receive fixes the amount of to_asset received and solves the least amount sent that delivers it.
3076
+ * @enum {string}
3077
+ */
3078
+ amount_side?: "send" | "receive";
3079
+ /**
3080
+ * @description The asset sent.
3081
+ * @enum {string}
3082
+ */
3083
+ from_asset: "USDC" | "USDT";
3084
+ /**
3085
+ * @description The swap route, from GET /v1/swap_routes.
3086
+ * @enum {string}
3087
+ */
3088
+ route: "ethereum_usdc_usdt";
3089
+ /**
3090
+ * @description The asset received. Must differ from from_asset.
3091
+ * @enum {string}
3092
+ */
3093
+ to_asset: "USDC" | "USDT";
3094
+ };
3095
+ SwapEstimateResult: {
3096
+ /** @description The swap fee, always in USDC. */
3097
+ fee_amount: string;
3098
+ /**
3099
+ * Format: int64
3100
+ * @description The swap fee rate, in basis points of the swap's USDC side.
3101
+ */
3102
+ fee_bps: number;
3103
+ /** @description The indicative all-in exchange rate, to_asset per one from_asset, before the swap fee, at eight places. */
3104
+ rate: string;
3105
+ /** @description The amount of to_asset received, after the fee when to_asset is USDC. */
3106
+ receive_amount: string;
3107
+ /**
3108
+ * @description The first check the swap fails, in the order a quote runs them, as the failure_code a quote would report; null when it passes.
3109
+ * @enum {string|null}
3110
+ */
3111
+ refusal_reason: "swap_custody_mode_unsupported" | "swap_amount_too_small" | "swap_amount_too_large" | "movement_limit_exceeded" | "insufficient_balance" | "swap_rate_out_of_bounds" | null;
3112
+ /** @description Whether the swap can go on to a firm quote. False exactly when refusal_reason is set. */
3113
+ reviewable: boolean;
3114
+ /** @description The amount of from_asset sent, the fee included when from_asset is USDC. */
3115
+ send_amount: string;
3116
+ /** @description How far rate is from 1:1, in basis points at two places: positive when the business receives less than it sends, before the fee. */
3117
+ spread_bps: string;
3118
+ } | null;
3119
+ SwapInput: {
3120
+ /** @description A ready, unexpired swap quote of this business and mode. A quote executes once. */
3121
+ quote_id: string;
3122
+ };
3123
+ SwapList: {
3124
+ data: components["schemas"]["Swap"][];
3125
+ has_more: boolean;
3126
+ /** @enum {string} */
3127
+ object: "list";
3128
+ };
3129
+ SwapQuote: {
3130
+ amount: string;
3131
+ /** @enum {string} */
3132
+ amount_side: "send" | "receive";
3133
+ /** Format: date-time */
3134
+ created_ts: string;
3135
+ /**
3136
+ * Format: date-time
3137
+ * @description When the firm quote stops being offered; null until status is ready. A swap that starts executing at or after this instant fails with quote_expired.
3138
+ */
3139
+ expires_ts: string | null;
3140
+ failure_code?: string;
3141
+ /** @enum {string} */
3142
+ from_asset: "USDC" | "USDT";
3143
+ id: string;
3144
+ livemode: boolean;
3145
+ /** @enum {string} */
3146
+ object: "swap_quote";
3147
+ /** @enum {string} */
3148
+ route: "ethereum_usdc_usdt";
3149
+ /** @enum {string} */
3150
+ status: "pending" | "ready" | "failed";
3151
+ terms: components["schemas"]["SwapTerms"];
3152
+ /** @enum {string} */
3153
+ to_asset: "USDC" | "USDT";
3154
+ };
3155
+ SwapQuoteInput: {
3156
+ /** @description The fixed amount on amount_side: a positive decimal with at most six places. */
3157
+ amount: string;
3158
+ /**
3159
+ * @description Which amount is fixed. send, the default, fixes the amount of from_asset sent; receive fixes the amount of to_asset received and solves the least amount sent that delivers it.
3160
+ * @enum {string}
3161
+ */
3162
+ amount_side?: "send" | "receive";
3163
+ /**
3164
+ * @description The asset sent.
3165
+ * @enum {string}
3166
+ */
3167
+ from_asset: "USDC" | "USDT";
3168
+ /**
3169
+ * @description The swap route, from GET /v1/swap_routes.
3170
+ * @enum {string}
3171
+ */
3172
+ route: "ethereum_usdc_usdt";
3173
+ /**
3174
+ * @description The asset received. Must differ from from_asset.
3175
+ * @enum {string}
3176
+ */
3177
+ to_asset: "USDC" | "USDT";
3178
+ };
3179
+ SwapRoute: {
3180
+ /** @description The assets the route swaps between, in either direction. */
3181
+ assets: components["schemas"]["SwapAssetName"][];
3182
+ /** @description The available Go Account balance of each of the route's assets: what a swap can send now. */
3183
+ available: components["schemas"]["SwapAssetAmount"][];
3184
+ /** @enum {string} */
3185
+ chain: "ethereum";
3186
+ /**
3187
+ * Format: int64
3188
+ * @description The business's swap fee rate for a swap of min_amount. With size bands a larger swap can pay another rate; an estimate states the rate for an amount.
3189
+ */
3190
+ fee_bps: number;
3191
+ /** @description The most a swap sends, in the asset sent. */
3192
+ max_amount: string;
3193
+ /** @description The least a swap sends, in the asset sent. */
3194
+ min_amount: string;
3195
+ /** @enum {string} */
3196
+ object: "swap_route";
3197
+ /** @enum {string} */
3198
+ route: "ethereum_usdc_usdt";
3199
+ };
3200
+ SwapRoutes: {
3201
+ data: components["schemas"]["SwapRoute"][];
3202
+ /** @description Whether swaps are enabled for the business. When false, data is empty and estimates, quotes and swaps fail with money_movement_type_disabled. */
3203
+ enabled: boolean;
3204
+ livemode: boolean;
3205
+ /** @enum {string} */
3206
+ object: "swap_routes";
3207
+ /** Format: date-time */
3208
+ observed_ts: string;
3209
+ };
3210
+ SwapTerms: {
3211
+ /** @description The swap fee, always in USDC. */
3212
+ fee_amount: string;
3213
+ /**
3214
+ * Format: int64
3215
+ * @description The swap fee rate, in basis points of the swap's USDC side.
3216
+ */
3217
+ fee_bps: number;
3218
+ /** @description The all-in exchange rate, to_asset per one from_asset, before the swap fee, at eight places. */
3219
+ rate: string;
3220
+ /** @description The amount of to_asset received, after the fee when to_asset is USDC. */
3221
+ receive_amount: string;
3222
+ /** @description The amount of from_asset sent, the fee included when from_asset is USDC. */
3223
+ send_amount: string;
3224
+ /** @description How far rate is from 1:1, in basis points at two places: positive when the business receives less than it sends, before the fee. */
3225
+ spread_bps: string;
3226
+ } | null;
2855
3227
  TradingPathwayAvailability: {
2856
3228
  /** @description Advisory availability at observed_ts. Execution rechecks eligibility and liquidity. */
2857
3229
  available: boolean;
@@ -5389,6 +5761,364 @@ export interface operations {
5389
5761
  };
5390
5762
  };
5391
5763
  };
5764
+ "swap_estimates.create": {
5765
+ parameters: {
5766
+ query?: never;
5767
+ header: {
5768
+ "Idempotency-Key": components["parameters"]["Idempotency-Key"];
5769
+ };
5770
+ path?: never;
5771
+ cookie?: never;
5772
+ };
5773
+ requestBody?: {
5774
+ content: {
5775
+ "application/json": components["schemas"]["SwapEstimateInput"];
5776
+ };
5777
+ };
5778
+ responses: {
5779
+ /** @description OK */
5780
+ 200: {
5781
+ headers: {
5782
+ "X-RateLimit-Limit": components["headers"]["X-RateLimit-Limit"];
5783
+ "X-RateLimit-Remaining": components["headers"]["X-RateLimit-Remaining"];
5784
+ "X-RateLimit-Reset": components["headers"]["X-RateLimit-Reset"];
5785
+ [name: string]: unknown;
5786
+ };
5787
+ content: {
5788
+ "application/json": components["schemas"]["SwapEstimate"];
5789
+ };
5790
+ };
5791
+ 400: components["responses"]["Error400"];
5792
+ 401: components["responses"]["Error401"];
5793
+ 403: components["responses"]["Error403"];
5794
+ 409: components["responses"]["Error409"];
5795
+ 429: components["responses"]["Error429"];
5796
+ /** @description Error response. */
5797
+ default: {
5798
+ headers: {
5799
+ [name: string]: unknown;
5800
+ };
5801
+ content: {
5802
+ "application/json": components["schemas"]["Error"];
5803
+ };
5804
+ };
5805
+ };
5806
+ };
5807
+ "swap_estimates.get": {
5808
+ parameters: {
5809
+ query?: never;
5810
+ header?: never;
5811
+ path: {
5812
+ id: string;
5813
+ };
5814
+ cookie?: never;
5815
+ };
5816
+ requestBody?: never;
5817
+ responses: {
5818
+ /** @description OK */
5819
+ 200: {
5820
+ headers: {
5821
+ "X-RateLimit-Limit": components["headers"]["X-RateLimit-Limit"];
5822
+ "X-RateLimit-Remaining": components["headers"]["X-RateLimit-Remaining"];
5823
+ "X-RateLimit-Reset": components["headers"]["X-RateLimit-Reset"];
5824
+ [name: string]: unknown;
5825
+ };
5826
+ content: {
5827
+ "application/json": components["schemas"]["SwapEstimate"];
5828
+ };
5829
+ };
5830
+ 400: components["responses"]["Error400"];
5831
+ 401: components["responses"]["Error401"];
5832
+ 403: components["responses"]["Error403"];
5833
+ 429: components["responses"]["Error429"];
5834
+ /** @description Error response. */
5835
+ default: {
5836
+ headers: {
5837
+ [name: string]: unknown;
5838
+ };
5839
+ content: {
5840
+ "application/json": components["schemas"]["Error"];
5841
+ };
5842
+ };
5843
+ };
5844
+ };
5845
+ "swap_quotes.create": {
5846
+ parameters: {
5847
+ query?: never;
5848
+ header: {
5849
+ "Idempotency-Key": components["parameters"]["Idempotency-Key"];
5850
+ };
5851
+ path?: never;
5852
+ cookie?: never;
5853
+ };
5854
+ requestBody?: {
5855
+ content: {
5856
+ "application/json": components["schemas"]["SwapQuoteInput"];
5857
+ };
5858
+ };
5859
+ responses: {
5860
+ /** @description OK */
5861
+ 200: {
5862
+ headers: {
5863
+ "X-RateLimit-Limit": components["headers"]["X-RateLimit-Limit"];
5864
+ "X-RateLimit-Remaining": components["headers"]["X-RateLimit-Remaining"];
5865
+ "X-RateLimit-Reset": components["headers"]["X-RateLimit-Reset"];
5866
+ [name: string]: unknown;
5867
+ };
5868
+ content: {
5869
+ "application/json": components["schemas"]["SwapQuote"];
5870
+ };
5871
+ };
5872
+ 400: components["responses"]["Error400"];
5873
+ 401: components["responses"]["Error401"];
5874
+ 403: components["responses"]["Error403"];
5875
+ 409: components["responses"]["Error409"];
5876
+ 429: components["responses"]["Error429"];
5877
+ /** @description Error response. */
5878
+ default: {
5879
+ headers: {
5880
+ [name: string]: unknown;
5881
+ };
5882
+ content: {
5883
+ "application/json": components["schemas"]["Error"];
5884
+ };
5885
+ };
5886
+ };
5887
+ };
5888
+ "swap_quotes.get": {
5889
+ parameters: {
5890
+ query?: never;
5891
+ header?: never;
5892
+ path: {
5893
+ id: string;
5894
+ };
5895
+ cookie?: never;
5896
+ };
5897
+ requestBody?: never;
5898
+ responses: {
5899
+ /** @description OK */
5900
+ 200: {
5901
+ headers: {
5902
+ "X-RateLimit-Limit": components["headers"]["X-RateLimit-Limit"];
5903
+ "X-RateLimit-Remaining": components["headers"]["X-RateLimit-Remaining"];
5904
+ "X-RateLimit-Reset": components["headers"]["X-RateLimit-Reset"];
5905
+ [name: string]: unknown;
5906
+ };
5907
+ content: {
5908
+ "application/json": components["schemas"]["SwapQuote"];
5909
+ };
5910
+ };
5911
+ 400: components["responses"]["Error400"];
5912
+ 401: components["responses"]["Error401"];
5913
+ 403: components["responses"]["Error403"];
5914
+ 429: components["responses"]["Error429"];
5915
+ /** @description Error response. */
5916
+ default: {
5917
+ headers: {
5918
+ [name: string]: unknown;
5919
+ };
5920
+ content: {
5921
+ "application/json": components["schemas"]["Error"];
5922
+ };
5923
+ };
5924
+ };
5925
+ };
5926
+ "swap_routes.snapshot": {
5927
+ parameters: {
5928
+ query?: never;
5929
+ header?: never;
5930
+ path?: never;
5931
+ cookie?: never;
5932
+ };
5933
+ requestBody?: never;
5934
+ responses: {
5935
+ /** @description OK */
5936
+ 200: {
5937
+ headers: {
5938
+ "X-RateLimit-Limit": components["headers"]["X-RateLimit-Limit"];
5939
+ "X-RateLimit-Remaining": components["headers"]["X-RateLimit-Remaining"];
5940
+ "X-RateLimit-Reset": components["headers"]["X-RateLimit-Reset"];
5941
+ [name: string]: unknown;
5942
+ };
5943
+ content: {
5944
+ "application/json": components["schemas"]["SwapRoutes"];
5945
+ };
5946
+ };
5947
+ 400: components["responses"]["Error400"];
5948
+ 401: components["responses"]["Error401"];
5949
+ 403: components["responses"]["Error403"];
5950
+ 429: components["responses"]["Error429"];
5951
+ /** @description Error response. */
5952
+ default: {
5953
+ headers: {
5954
+ [name: string]: unknown;
5955
+ };
5956
+ content: {
5957
+ "application/json": components["schemas"]["Error"];
5958
+ };
5959
+ };
5960
+ };
5961
+ };
5962
+ "swap_submissions.get": {
5963
+ parameters: {
5964
+ query: {
5965
+ /** @description The Idempotency-Key of the original POST /v1/swaps request. */
5966
+ idempotency_key: string;
5967
+ };
5968
+ header?: never;
5969
+ path?: never;
5970
+ cookie?: never;
5971
+ };
5972
+ requestBody?: never;
5973
+ responses: {
5974
+ /** @description OK */
5975
+ 200: {
5976
+ headers: {
5977
+ "X-RateLimit-Limit": components["headers"]["X-RateLimit-Limit"];
5978
+ "X-RateLimit-Remaining": components["headers"]["X-RateLimit-Remaining"];
5979
+ "X-RateLimit-Reset": components["headers"]["X-RateLimit-Reset"];
5980
+ [name: string]: unknown;
5981
+ };
5982
+ content: {
5983
+ "application/json": components["schemas"]["Swap"];
5984
+ };
5985
+ };
5986
+ 400: components["responses"]["Error400"];
5987
+ 401: components["responses"]["Error401"];
5988
+ 403: components["responses"]["Error403"];
5989
+ 429: components["responses"]["Error429"];
5990
+ /** @description Error response. */
5991
+ default: {
5992
+ headers: {
5993
+ [name: string]: unknown;
5994
+ };
5995
+ content: {
5996
+ "application/json": components["schemas"]["Error"];
5997
+ };
5998
+ };
5999
+ };
6000
+ };
6001
+ "swaps.list": {
6002
+ parameters: {
6003
+ query?: {
6004
+ limit?: number;
6005
+ starting_after?: string;
6006
+ ending_before?: string;
6007
+ };
6008
+ header?: never;
6009
+ path?: never;
6010
+ cookie?: never;
6011
+ };
6012
+ requestBody?: never;
6013
+ responses: {
6014
+ /** @description OK */
6015
+ 200: {
6016
+ headers: {
6017
+ "X-RateLimit-Limit": components["headers"]["X-RateLimit-Limit"];
6018
+ "X-RateLimit-Remaining": components["headers"]["X-RateLimit-Remaining"];
6019
+ "X-RateLimit-Reset": components["headers"]["X-RateLimit-Reset"];
6020
+ [name: string]: unknown;
6021
+ };
6022
+ content: {
6023
+ "application/json": components["schemas"]["SwapList"];
6024
+ };
6025
+ };
6026
+ 400: components["responses"]["Error400"];
6027
+ 401: components["responses"]["Error401"];
6028
+ 403: components["responses"]["Error403"];
6029
+ 429: components["responses"]["Error429"];
6030
+ /** @description Error response. */
6031
+ default: {
6032
+ headers: {
6033
+ [name: string]: unknown;
6034
+ };
6035
+ content: {
6036
+ "application/json": components["schemas"]["Error"];
6037
+ };
6038
+ };
6039
+ };
6040
+ };
6041
+ "swaps.create": {
6042
+ parameters: {
6043
+ query?: never;
6044
+ header: {
6045
+ "Idempotency-Key": components["parameters"]["Idempotency-Key"];
6046
+ };
6047
+ path?: never;
6048
+ cookie?: never;
6049
+ };
6050
+ requestBody?: {
6051
+ content: {
6052
+ "application/json": components["schemas"]["SwapInput"];
6053
+ };
6054
+ };
6055
+ responses: {
6056
+ /** @description OK */
6057
+ 200: {
6058
+ headers: {
6059
+ "X-RateLimit-Limit": components["headers"]["X-RateLimit-Limit"];
6060
+ "X-RateLimit-Remaining": components["headers"]["X-RateLimit-Remaining"];
6061
+ "X-RateLimit-Reset": components["headers"]["X-RateLimit-Reset"];
6062
+ [name: string]: unknown;
6063
+ };
6064
+ content: {
6065
+ "application/json": components["schemas"]["Swap"];
6066
+ };
6067
+ };
6068
+ 400: components["responses"]["Error400"];
6069
+ 401: components["responses"]["Error401"];
6070
+ 403: components["responses"]["Error403"];
6071
+ 409: components["responses"]["Error409"];
6072
+ 429: components["responses"]["Error429"];
6073
+ /** @description Error response. */
6074
+ default: {
6075
+ headers: {
6076
+ [name: string]: unknown;
6077
+ };
6078
+ content: {
6079
+ "application/json": components["schemas"]["Error"];
6080
+ };
6081
+ };
6082
+ };
6083
+ };
6084
+ "swaps.get": {
6085
+ parameters: {
6086
+ query?: never;
6087
+ header?: never;
6088
+ path: {
6089
+ id: string;
6090
+ };
6091
+ cookie?: never;
6092
+ };
6093
+ requestBody?: never;
6094
+ responses: {
6095
+ /** @description OK */
6096
+ 200: {
6097
+ headers: {
6098
+ "X-RateLimit-Limit": components["headers"]["X-RateLimit-Limit"];
6099
+ "X-RateLimit-Remaining": components["headers"]["X-RateLimit-Remaining"];
6100
+ "X-RateLimit-Reset": components["headers"]["X-RateLimit-Reset"];
6101
+ [name: string]: unknown;
6102
+ };
6103
+ content: {
6104
+ "application/json": components["schemas"]["Swap"];
6105
+ };
6106
+ };
6107
+ 400: components["responses"]["Error400"];
6108
+ 401: components["responses"]["Error401"];
6109
+ 403: components["responses"]["Error403"];
6110
+ 429: components["responses"]["Error429"];
6111
+ /** @description Error response. */
6112
+ default: {
6113
+ headers: {
6114
+ [name: string]: unknown;
6115
+ };
6116
+ content: {
6117
+ "application/json": components["schemas"]["Error"];
6118
+ };
6119
+ };
6120
+ };
6121
+ };
5392
6122
  "trading_pathways.snapshot": {
5393
6123
  parameters: {
5394
6124
  query: {