compass_api_sdk 0.9.51__py3-none-any.whl → 1.0.0__py3-none-any.whl

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.

Potentially problematic release.


This version of compass_api_sdk might be problematic. Click here for more details.

Files changed (133) hide show
  1. compass_api_sdk/_version.py +3 -3
  2. compass_api_sdk/aave_v3.py +198 -198
  3. compass_api_sdk/aerodrome_slipstream.py +108 -108
  4. compass_api_sdk/erc_4626_vaults.py +44 -44
  5. compass_api_sdk/errors/__init__.py +3 -2
  6. compass_api_sdk/models/__init__.py +900 -746
  7. compass_api_sdk/models/aaveborrowrequest.py +9 -5
  8. compass_api_sdk/models/aavehistoricaltransactionsresponse.py +5 -5
  9. compass_api_sdk/models/aavelooprequest.py +59 -11
  10. compass_api_sdk/models/aaverepayrequest.py +9 -5
  11. compass_api_sdk/models/aavereserveoverviewresponse.py +34 -3
  12. compass_api_sdk/models/aavesupplyrequest.py +9 -5
  13. compass_api_sdk/models/aavewithdrawrequest.py +9 -5
  14. compass_api_sdk/models/aerodromeslipstreambuyexactlyrequest.py +7 -5
  15. compass_api_sdk/models/aerodromeslipstreamincreaseliquidityprovisionrequest.py +7 -5
  16. compass_api_sdk/models/aerodromeslipstreammintliquidityprovisionrequest.py +7 -5
  17. compass_api_sdk/models/aerodromeslipstreamsellexactlyrequest.py +7 -5
  18. compass_api_sdk/models/aerodromeslipstreamwithdrawliquidityprovisionrequest.py +7 -5
  19. compass_api_sdk/models/batcheduseroperationsrequest.py +9 -5
  20. compass_api_sdk/models/chain.py +3 -3
  21. compass_api_sdk/models/details.py +44 -7
  22. compass_api_sdk/models/morphoborrowrequest.py +3 -2
  23. compass_api_sdk/models/morphodepositrequest.py +3 -2
  24. compass_api_sdk/models/morphorepayrequest.py +3 -2
  25. compass_api_sdk/models/morphosupplycollateralrequest.py +3 -2
  26. compass_api_sdk/models/morphowithdrawcollateralrequest.py +3 -2
  27. compass_api_sdk/models/morphowithdrawrequest.py +3 -2
  28. compass_api_sdk/models/movement10percent.py +65 -10
  29. compass_api_sdk/models/multicallauthorizationrequest.py +9 -5
  30. compass_api_sdk/models/multicallexecuterequest.py +53 -10
  31. compass_api_sdk/models/odosswaprequest.py +9 -5
  32. compass_api_sdk/models/pendlemanageliquidityparams.py +81 -0
  33. compass_api_sdk/models/pendlemanageliquidityrequest.py +95 -0
  34. compass_api_sdk/models/pendleredeemyieldrequest.py +9 -5
  35. compass_api_sdk/models/pendletradeptparams.py +81 -0
  36. compass_api_sdk/models/pendletradeptrequest.py +95 -0
  37. compass_api_sdk/models/pendletradeytparams.py +81 -0
  38. compass_api_sdk/models/pendletradeytrequest.py +95 -0
  39. compass_api_sdk/models/pendletxresponse.py +45 -0
  40. compass_api_sdk/models/setallowancerequest.py +8 -5
  41. compass_api_sdk/models/skybuyrequest.py +7 -9
  42. compass_api_sdk/models/skydepositrequest.py +7 -8
  43. compass_api_sdk/models/skysellrequest.py +7 -9
  44. compass_api_sdk/models/skywithdrawrequest.py +7 -8
  45. compass_api_sdk/models/token_enum.py +17 -0
  46. compass_api_sdk/models/tokentransferparams.py +67 -0
  47. compass_api_sdk/models/tokentransferrequest.py +9 -5
  48. compass_api_sdk/models/transactionresponse.py +40 -0
  49. compass_api_sdk/models/uniswapbuyexactlyparams.py +19 -24
  50. compass_api_sdk/models/uniswapbuyexactlyrequest.py +28 -29
  51. compass_api_sdk/models/uniswapbuyexactlytransactionresponse.py +45 -0
  52. compass_api_sdk/models/uniswapincreaseliquidityprovisionrequest.py +9 -5
  53. compass_api_sdk/models/uniswapmintliquidityprovisionrequest.py +9 -5
  54. compass_api_sdk/models/uniswapsellexactlyparams.py +43 -40
  55. compass_api_sdk/models/uniswapsellexactlyrequest.py +52 -45
  56. compass_api_sdk/models/uniswapsellexactlytransactionresponse.py +45 -0
  57. compass_api_sdk/models/uniswapwithdrawliquidityprovisionrequest.py +9 -5
  58. compass_api_sdk/models/unwrapwethrequest.py +9 -5
  59. compass_api_sdk/models/useroperation.py +34 -40
  60. compass_api_sdk/models/{aave_aave_supported_tokensop.py → v1_aave_aave_supported_tokensop.py} +9 -13
  61. compass_api_sdk/models/{aave_avg_rateop.py → v1_aave_avg_rateop.py} +32 -19
  62. compass_api_sdk/models/{aave_historical_transactionsop.py → v1_aave_historical_transactionsop.py} +9 -13
  63. compass_api_sdk/models/{aave_liquidity_changeop.py → v1_aave_liquidity_changeop.py} +30 -17
  64. compass_api_sdk/models/{aave_rateop.py → v1_aave_rateop.py} +32 -19
  65. compass_api_sdk/models/{aave_reserve_overviewop.py → v1_aave_reserve_overviewop.py} +32 -19
  66. compass_api_sdk/models/{aave_std_rateop.py → v1_aave_std_rateop.py} +32 -19
  67. compass_api_sdk/models/{aave_token_priceop.py → v1_aave_token_priceop.py} +32 -19
  68. compass_api_sdk/models/{aave_user_position_per_tokenop.py → v1_aave_user_position_per_tokenop.py} +32 -19
  69. compass_api_sdk/models/{aave_user_position_summaryop.py → v1_aave_user_position_summaryop.py} +9 -13
  70. compass_api_sdk/models/{uniswap_liquidity_provision_positionsop.py → v1_aerodrome_slipstream_liquidity_provision_positionsop.py} +7 -13
  71. compass_api_sdk/models/{aerodrome_slipstream_pool_priceop.py → v1_aerodrome_slipstream_pool_priceop.py} +53 -25
  72. compass_api_sdk/models/{generic_allowanceop.py → v1_generic_allowanceop.py} +24 -25
  73. compass_api_sdk/models/{generic_ensop.py → v1_generic_ensop.py} +7 -13
  74. compass_api_sdk/models/{generic_portfolioop.py → v1_generic_portfolioop.py} +9 -13
  75. compass_api_sdk/models/{generic_supported_chainsop.py → v1_generic_supported_chainsop.py} +2 -2
  76. compass_api_sdk/models/v1_generic_supported_tokensop.py +24 -0
  77. compass_api_sdk/models/{morpho_market_positionop.py → v1_morpho_market_positionop.py} +9 -8
  78. compass_api_sdk/models/{morpho_marketop.py → v1_morpho_marketop.py} +9 -8
  79. compass_api_sdk/models/{morpho_marketsop.py → v1_morpho_marketsop.py} +9 -8
  80. compass_api_sdk/models/{morpho_user_positionop.py → v1_morpho_user_positionop.py} +9 -8
  81. compass_api_sdk/models/{morpho_vaultop.py → v1_morpho_vaultop.py} +9 -13
  82. compass_api_sdk/models/{morpho_vaultsop.py → v1_morpho_vaultsop.py} +9 -8
  83. compass_api_sdk/models/{pendle_marketop.py → v1_pendle_marketop.py} +9 -13
  84. compass_api_sdk/models/v1_pendle_marketsop.py +24 -0
  85. compass_api_sdk/models/{pendle_positionsop.py → v1_pendle_positionsop.py} +10 -14
  86. compass_api_sdk/models/{sky_positionop.py → v1_sky_positionop.py} +14 -15
  87. compass_api_sdk/models/{token_addressop.py → v1_token_addressop.py} +30 -17
  88. compass_api_sdk/models/{token_balanceop.py → v1_token_balanceop.py} +14 -18
  89. compass_api_sdk/models/{token_priceop.py → v1_token_priceop.py} +14 -18
  90. compass_api_sdk/models/v1_transaction_bundler_aave_loopop.py +24 -0
  91. compass_api_sdk/models/{uniswap_liquidity_provision_in_rangeop.py → v1_uniswap_liquidity_provision_in_rangeop.py} +9 -13
  92. compass_api_sdk/models/{aerodrome_slipstream_liquidity_provision_positionsop.py → v1_uniswap_liquidity_provision_positionsop.py} +9 -13
  93. compass_api_sdk/models/{uniswap_pool_priceop.py → v1_uniswap_pool_priceop.py} +59 -29
  94. compass_api_sdk/models/{uniswap_quote_buy_exactlyop.py → v1_uniswap_quote_buy_exactlyop.py} +65 -35
  95. compass_api_sdk/models/{uniswap_quote_sell_exactlyop.py → v1_uniswap_quote_sell_exactlyop.py} +65 -35
  96. compass_api_sdk/models/{vaults_vaultop.py → v1_vaults_vaultop.py} +9 -13
  97. compass_api_sdk/models/vaultdepositparams.py +85 -0
  98. compass_api_sdk/models/vaultdepositrequest.py +9 -5
  99. compass_api_sdk/models/vaultwithdrawparams.py +75 -0
  100. compass_api_sdk/models/vaultwithdrawrequest.py +9 -5
  101. compass_api_sdk/models/wrapethrequest.py +9 -5
  102. compass_api_sdk/morpho.py +140 -140
  103. compass_api_sdk/pendle.py +254 -1066
  104. compass_api_sdk/sky.py +98 -56
  105. compass_api_sdk/smart_account.py +10 -10
  106. compass_api_sdk/swap.py +16 -16
  107. compass_api_sdk/token_sdk.py +56 -56
  108. compass_api_sdk/transaction_bundler.py +64 -62
  109. compass_api_sdk/uniswap_v3.py +222 -214
  110. compass_api_sdk/universal.py +104 -292
  111. compass_api_sdk/utils/__init__.py +3 -2
  112. {compass_api_sdk-0.9.51.dist-info → compass_api_sdk-1.0.0.dist-info}/METADATA +83 -88
  113. {compass_api_sdk-0.9.51.dist-info → compass_api_sdk-1.0.0.dist-info}/RECORD +114 -117
  114. compass_api_sdk/models/generic_supported_tokensop.py +0 -28
  115. compass_api_sdk/models/generic_visualize_portfolioop.py +0 -37
  116. compass_api_sdk/models/image.py +0 -15
  117. compass_api_sdk/models/pendle_marketsop.py +0 -28
  118. compass_api_sdk/models/pendle_quoteop.py +0 -128
  119. compass_api_sdk/models/pendleaddliquidityparams.py +0 -50
  120. compass_api_sdk/models/pendleaddliquidityrequest.py +0 -61
  121. compass_api_sdk/models/pendlebuyptparams.py +0 -48
  122. compass_api_sdk/models/pendlebuyptrequest.py +0 -59
  123. compass_api_sdk/models/pendlebuyytparams.py +0 -48
  124. compass_api_sdk/models/pendlebuyytrequest.py +0 -59
  125. compass_api_sdk/models/pendlegetquoteresponse.py +0 -15
  126. compass_api_sdk/models/pendleremoveliquidityparams.py +0 -50
  127. compass_api_sdk/models/pendleremoveliquidityrequest.py +0 -61
  128. compass_api_sdk/models/pendlesellptparams.py +0 -48
  129. compass_api_sdk/models/pendlesellptrequest.py +0 -61
  130. compass_api_sdk/models/pendlesellytparams.py +0 -48
  131. compass_api_sdk/models/pendlesellytrequest.py +0 -61
  132. compass_api_sdk/models/txresponse.py +0 -27
  133. {compass_api_sdk-0.9.51.dist-info → compass_api_sdk-1.0.0.dist-info}/WHEEL +0 -0
@@ -9,10 +9,10 @@ from typing import Any, List, Mapping, Optional, Union
9
9
 
10
10
 
11
11
  class TransactionBundler(BaseSDK):
12
- def bundler_authorization(
12
+ def transaction_bundler_authorization(
13
13
  self,
14
14
  *,
15
- chain: models.Chain,
15
+ chain: models.MulticallAuthorizationRequestChain,
16
16
  sender: str,
17
17
  retries: OptionalNullable[utils.RetryConfig] = UNSET,
18
18
  server_url: Optional[str] = None,
@@ -28,7 +28,7 @@ class TransactionBundler(BaseSDK):
28
28
  transaction. The authorization includes a nonce and chain ID to guarantee
29
29
  transaction uniqueness and proper network targeting.
30
30
 
31
- :param chain: The chain to use.
31
+ :param chain:
32
32
  :param sender: The Ethereum address to use for authorization
33
33
  :param retries: Override the default retry configuration for this method
34
34
  :param server_url: Override the default server URL for this method
@@ -52,7 +52,7 @@ class TransactionBundler(BaseSDK):
52
52
 
53
53
  req = self._build_request(
54
54
  method="POST",
55
- path="/v0/transaction_bundler/authorization",
55
+ path="/v1/transaction_bundler/authorization",
56
56
  base_url=base_url,
57
57
  url_variables=url_variables,
58
58
  request=request,
@@ -81,7 +81,7 @@ class TransactionBundler(BaseSDK):
81
81
  hook_ctx=HookContext(
82
82
  config=self.sdk_configuration,
83
83
  base_url=base_url or "",
84
- operation_id="transaction_bundler_authorization",
84
+ operation_id="v1_transaction_bundler_authorization",
85
85
  oauth2_scopes=[],
86
86
  security_source=self.sdk_configuration.security,
87
87
  ),
@@ -109,10 +109,10 @@ class TransactionBundler(BaseSDK):
109
109
 
110
110
  raise errors.APIError("Unexpected response received", http_res)
111
111
 
112
- async def bundler_authorization_async(
112
+ async def transaction_bundler_authorization_async(
113
113
  self,
114
114
  *,
115
- chain: models.Chain,
115
+ chain: models.MulticallAuthorizationRequestChain,
116
116
  sender: str,
117
117
  retries: OptionalNullable[utils.RetryConfig] = UNSET,
118
118
  server_url: Optional[str] = None,
@@ -128,7 +128,7 @@ class TransactionBundler(BaseSDK):
128
128
  transaction. The authorization includes a nonce and chain ID to guarantee
129
129
  transaction uniqueness and proper network targeting.
130
130
 
131
- :param chain: The chain to use.
131
+ :param chain:
132
132
  :param sender: The Ethereum address to use for authorization
133
133
  :param retries: Override the default retry configuration for this method
134
134
  :param server_url: Override the default server URL for this method
@@ -152,7 +152,7 @@ class TransactionBundler(BaseSDK):
152
152
 
153
153
  req = self._build_request_async(
154
154
  method="POST",
155
- path="/v0/transaction_bundler/authorization",
155
+ path="/v1/transaction_bundler/authorization",
156
156
  base_url=base_url,
157
157
  url_variables=url_variables,
158
158
  request=request,
@@ -181,7 +181,7 @@ class TransactionBundler(BaseSDK):
181
181
  hook_ctx=HookContext(
182
182
  config=self.sdk_configuration,
183
183
  base_url=base_url or "",
184
- operation_id="transaction_bundler_authorization",
184
+ operation_id="v1_transaction_bundler_authorization",
185
185
  oauth2_scopes=[],
186
186
  security_source=self.sdk_configuration.security,
187
187
  ),
@@ -209,20 +209,20 @@ class TransactionBundler(BaseSDK):
209
209
 
210
210
  raise errors.APIError("Unexpected response received", http_res)
211
211
 
212
- def bundler_execute(
212
+ def transaction_bundler_execute(
213
213
  self,
214
214
  *,
215
- chain: models.Chain,
215
+ chain: models.MulticallExecuteRequestChain,
216
216
  sender: str,
217
- signed_authorization: Union[
218
- models.SignedAuthorization, models.SignedAuthorizationTypedDict
219
- ],
220
217
  actions: Union[List[models.UserOperation], List[models.UserOperationTypedDict]],
218
+ signed_authorization: OptionalNullable[
219
+ Union[models.SignedAuthorization, models.SignedAuthorizationTypedDict]
220
+ ] = UNSET,
221
221
  retries: OptionalNullable[utils.RetryConfig] = UNSET,
222
222
  server_url: Optional[str] = None,
223
223
  timeout_ms: Optional[int] = None,
224
224
  http_headers: Optional[Mapping[str, str]] = None,
225
- ) -> models.UnsignedMulticallTransaction:
225
+ ) -> models.TransactionResponse:
226
226
  r"""Construct Bundled Transaction
227
227
 
228
228
  Bundle arbitrary transactions together into a single multicall transaction using
@@ -233,10 +233,10 @@ class TransactionBundler(BaseSDK):
233
233
  together. The transaction must be authorized using the /authorization endpoint to
234
234
  prevent replay attacks.
235
235
 
236
- :param chain: The chain to use.
236
+ :param chain:
237
237
  :param sender: The address of the transaction sender.
238
- :param signed_authorization:
239
238
  :param actions: List of possible actions for multicall
239
+ :param signed_authorization: EIP-7702 authorization
240
240
  :param retries: Override the default retry configuration for this method
241
241
  :param server_url: Override the default server URL for this method
242
242
  :param timeout_ms: Override the default request timeout configuration for this method in milliseconds
@@ -256,14 +256,14 @@ class TransactionBundler(BaseSDK):
256
256
  chain=chain,
257
257
  sender=sender,
258
258
  signed_authorization=utils.get_pydantic_model(
259
- signed_authorization, models.SignedAuthorization
259
+ signed_authorization, OptionalNullable[models.SignedAuthorization]
260
260
  ),
261
261
  actions=utils.get_pydantic_model(actions, List[models.UserOperation]),
262
262
  )
263
263
 
264
264
  req = self._build_request(
265
265
  method="POST",
266
- path="/v0/transaction_bundler/execute",
266
+ path="/v1/transaction_bundler/execute",
267
267
  base_url=base_url,
268
268
  url_variables=url_variables,
269
269
  request=request,
@@ -292,7 +292,7 @@ class TransactionBundler(BaseSDK):
292
292
  hook_ctx=HookContext(
293
293
  config=self.sdk_configuration,
294
294
  base_url=base_url or "",
295
- operation_id="transaction_bundler_execute",
295
+ operation_id="v1_transaction_bundler_execute",
296
296
  oauth2_scopes=[],
297
297
  security_source=self.sdk_configuration.security,
298
298
  ),
@@ -303,9 +303,7 @@ class TransactionBundler(BaseSDK):
303
303
 
304
304
  response_data: Any = None
305
305
  if utils.match_response(http_res, "200", "application/json"):
306
- return unmarshal_json_response(
307
- models.UnsignedMulticallTransaction, http_res
308
- )
306
+ return unmarshal_json_response(models.TransactionResponse, http_res)
309
307
  if utils.match_response(http_res, "422", "application/json"):
310
308
  response_data = unmarshal_json_response(
311
309
  errors.HTTPValidationErrorData, http_res
@@ -320,20 +318,20 @@ class TransactionBundler(BaseSDK):
320
318
 
321
319
  raise errors.APIError("Unexpected response received", http_res)
322
320
 
323
- async def bundler_execute_async(
321
+ async def transaction_bundler_execute_async(
324
322
  self,
325
323
  *,
326
- chain: models.Chain,
324
+ chain: models.MulticallExecuteRequestChain,
327
325
  sender: str,
328
- signed_authorization: Union[
329
- models.SignedAuthorization, models.SignedAuthorizationTypedDict
330
- ],
331
326
  actions: Union[List[models.UserOperation], List[models.UserOperationTypedDict]],
327
+ signed_authorization: OptionalNullable[
328
+ Union[models.SignedAuthorization, models.SignedAuthorizationTypedDict]
329
+ ] = UNSET,
332
330
  retries: OptionalNullable[utils.RetryConfig] = UNSET,
333
331
  server_url: Optional[str] = None,
334
332
  timeout_ms: Optional[int] = None,
335
333
  http_headers: Optional[Mapping[str, str]] = None,
336
- ) -> models.UnsignedMulticallTransaction:
334
+ ) -> models.TransactionResponse:
337
335
  r"""Construct Bundled Transaction
338
336
 
339
337
  Bundle arbitrary transactions together into a single multicall transaction using
@@ -344,10 +342,10 @@ class TransactionBundler(BaseSDK):
344
342
  together. The transaction must be authorized using the /authorization endpoint to
345
343
  prevent replay attacks.
346
344
 
347
- :param chain: The chain to use.
345
+ :param chain:
348
346
  :param sender: The address of the transaction sender.
349
- :param signed_authorization:
350
347
  :param actions: List of possible actions for multicall
348
+ :param signed_authorization: EIP-7702 authorization
351
349
  :param retries: Override the default retry configuration for this method
352
350
  :param server_url: Override the default server URL for this method
353
351
  :param timeout_ms: Override the default request timeout configuration for this method in milliseconds
@@ -367,14 +365,14 @@ class TransactionBundler(BaseSDK):
367
365
  chain=chain,
368
366
  sender=sender,
369
367
  signed_authorization=utils.get_pydantic_model(
370
- signed_authorization, models.SignedAuthorization
368
+ signed_authorization, OptionalNullable[models.SignedAuthorization]
371
369
  ),
372
370
  actions=utils.get_pydantic_model(actions, List[models.UserOperation]),
373
371
  )
374
372
 
375
373
  req = self._build_request_async(
376
374
  method="POST",
377
- path="/v0/transaction_bundler/execute",
375
+ path="/v1/transaction_bundler/execute",
378
376
  base_url=base_url,
379
377
  url_variables=url_variables,
380
378
  request=request,
@@ -403,7 +401,7 @@ class TransactionBundler(BaseSDK):
403
401
  hook_ctx=HookContext(
404
402
  config=self.sdk_configuration,
405
403
  base_url=base_url or "",
406
- operation_id="transaction_bundler_execute",
404
+ operation_id="v1_transaction_bundler_execute",
407
405
  oauth2_scopes=[],
408
406
  security_source=self.sdk_configuration.security,
409
407
  ),
@@ -414,9 +412,7 @@ class TransactionBundler(BaseSDK):
414
412
 
415
413
  response_data: Any = None
416
414
  if utils.match_response(http_res, "200", "application/json"):
417
- return unmarshal_json_response(
418
- models.UnsignedMulticallTransaction, http_res
419
- )
415
+ return unmarshal_json_response(models.TransactionResponse, http_res)
420
416
  if utils.match_response(http_res, "422", "application/json"):
421
417
  response_data = unmarshal_json_response(
422
418
  errors.HTTPValidationErrorData, http_res
@@ -431,14 +427,11 @@ class TransactionBundler(BaseSDK):
431
427
 
432
428
  raise errors.APIError("Unexpected response received", http_res)
433
429
 
434
- def bundler_aave_loop(
430
+ def transaction_bundler_aave_loop(
435
431
  self,
436
432
  *,
437
- chain: models.Chain,
433
+ chain: models.AaveLoopRequestChain,
438
434
  sender: str,
439
- signed_authorization: Union[
440
- models.SignedAuthorization, models.SignedAuthorizationTypedDict
441
- ],
442
435
  collateral_token: models.TokenEnum,
443
436
  borrow_token: models.TokenEnum,
444
437
  initial_collateral_amount: Union[
@@ -449,11 +442,15 @@ class TransactionBundler(BaseSDK):
449
442
  models.MaxSlippagePercent, models.MaxSlippagePercentTypedDict
450
443
  ],
451
444
  loan_to_value: Union[models.LoanToValue, models.LoanToValueTypedDict],
445
+ signed_authorization: OptionalNullable[
446
+ Union[models.SignedAuthorization, models.SignedAuthorizationTypedDict]
447
+ ] = UNSET,
448
+ is_account_abstraction: Optional[bool] = False,
452
449
  retries: OptionalNullable[utils.RetryConfig] = UNSET,
453
450
  server_url: Optional[str] = None,
454
451
  timeout_ms: Optional[int] = None,
455
452
  http_headers: Optional[Mapping[str, str]] = None,
456
- ) -> models.UnsignedMulticallTransaction:
453
+ ) -> models.ResponseV1TransactionBundlerAaveLoop:
457
454
  r"""AAVE Leverage Long/Short
458
455
 
459
456
  Execute an Aave looping strategy that involves repeated supply and borrow
@@ -468,15 +465,16 @@ class TransactionBundler(BaseSDK):
468
465
 
469
466
  The transaction must be authorized using the /authorization endpoint to prevent replay attacks.
470
467
 
471
- :param chain: The chain to use.
468
+ :param chain:
472
469
  :param sender: The address of the transaction sender.
473
- :param signed_authorization:
474
470
  :param collateral_token: A class representing the token. This class is used to represent the token in the system. Notice individual endpoints' documentation where per chain tokens are presented.
475
471
  :param borrow_token: A class representing the token. This class is used to represent the token in the system. Notice individual endpoints' documentation where per chain tokens are presented.
476
472
  :param initial_collateral_amount: Amount of collateral token to supply to Aave
477
473
  :param multiplier: Leverage multiplier. Total loop collateral will be calculated as `multiplier` x `initial_collateral_amount`
478
474
  :param max_slippage_percent: Maximum allowed slippage for token swaps in percentage
479
475
  :param loan_to_value: Loan To Value percentage of the loop
476
+ :param signed_authorization: EIP-7702 authorization. Required when `is_account_abstraction` is False.
477
+ :param is_account_abstraction: Whether to use account abstraction for the transaction.
480
478
  :param retries: Override the default retry configuration for this method
481
479
  :param server_url: Override the default server URL for this method
482
480
  :param timeout_ms: Override the default request timeout configuration for this method in milliseconds
@@ -496,7 +494,7 @@ class TransactionBundler(BaseSDK):
496
494
  chain=chain,
497
495
  sender=sender,
498
496
  signed_authorization=utils.get_pydantic_model(
499
- signed_authorization, models.SignedAuthorization
497
+ signed_authorization, OptionalNullable[models.SignedAuthorization]
500
498
  ),
501
499
  collateral_token=collateral_token,
502
500
  borrow_token=borrow_token,
@@ -504,11 +502,12 @@ class TransactionBundler(BaseSDK):
504
502
  multiplier=multiplier,
505
503
  max_slippage_percent=max_slippage_percent,
506
504
  loan_to_value=loan_to_value,
505
+ is_account_abstraction=is_account_abstraction,
507
506
  )
508
507
 
509
508
  req = self._build_request(
510
509
  method="POST",
511
- path="/v0/transaction_bundler/aave/loop",
510
+ path="/v1/transaction_bundler/aave/loop",
512
511
  base_url=base_url,
513
512
  url_variables=url_variables,
514
513
  request=request,
@@ -537,7 +536,7 @@ class TransactionBundler(BaseSDK):
537
536
  hook_ctx=HookContext(
538
537
  config=self.sdk_configuration,
539
538
  base_url=base_url or "",
540
- operation_id="transaction_bundler_aave_loop",
539
+ operation_id="v1_transaction_bundler_aave_loop",
541
540
  oauth2_scopes=[],
542
541
  security_source=self.sdk_configuration.security,
543
542
  ),
@@ -549,7 +548,7 @@ class TransactionBundler(BaseSDK):
549
548
  response_data: Any = None
550
549
  if utils.match_response(http_res, "200", "application/json"):
551
550
  return unmarshal_json_response(
552
- models.UnsignedMulticallTransaction, http_res
551
+ models.ResponseV1TransactionBundlerAaveLoop, http_res
553
552
  )
554
553
  if utils.match_response(http_res, "422", "application/json"):
555
554
  response_data = unmarshal_json_response(
@@ -565,14 +564,11 @@ class TransactionBundler(BaseSDK):
565
564
 
566
565
  raise errors.APIError("Unexpected response received", http_res)
567
566
 
568
- async def bundler_aave_loop_async(
567
+ async def transaction_bundler_aave_loop_async(
569
568
  self,
570
569
  *,
571
- chain: models.Chain,
570
+ chain: models.AaveLoopRequestChain,
572
571
  sender: str,
573
- signed_authorization: Union[
574
- models.SignedAuthorization, models.SignedAuthorizationTypedDict
575
- ],
576
572
  collateral_token: models.TokenEnum,
577
573
  borrow_token: models.TokenEnum,
578
574
  initial_collateral_amount: Union[
@@ -583,11 +579,15 @@ class TransactionBundler(BaseSDK):
583
579
  models.MaxSlippagePercent, models.MaxSlippagePercentTypedDict
584
580
  ],
585
581
  loan_to_value: Union[models.LoanToValue, models.LoanToValueTypedDict],
582
+ signed_authorization: OptionalNullable[
583
+ Union[models.SignedAuthorization, models.SignedAuthorizationTypedDict]
584
+ ] = UNSET,
585
+ is_account_abstraction: Optional[bool] = False,
586
586
  retries: OptionalNullable[utils.RetryConfig] = UNSET,
587
587
  server_url: Optional[str] = None,
588
588
  timeout_ms: Optional[int] = None,
589
589
  http_headers: Optional[Mapping[str, str]] = None,
590
- ) -> models.UnsignedMulticallTransaction:
590
+ ) -> models.ResponseV1TransactionBundlerAaveLoop:
591
591
  r"""AAVE Leverage Long/Short
592
592
 
593
593
  Execute an Aave looping strategy that involves repeated supply and borrow
@@ -602,15 +602,16 @@ class TransactionBundler(BaseSDK):
602
602
 
603
603
  The transaction must be authorized using the /authorization endpoint to prevent replay attacks.
604
604
 
605
- :param chain: The chain to use.
605
+ :param chain:
606
606
  :param sender: The address of the transaction sender.
607
- :param signed_authorization:
608
607
  :param collateral_token: A class representing the token. This class is used to represent the token in the system. Notice individual endpoints' documentation where per chain tokens are presented.
609
608
  :param borrow_token: A class representing the token. This class is used to represent the token in the system. Notice individual endpoints' documentation where per chain tokens are presented.
610
609
  :param initial_collateral_amount: Amount of collateral token to supply to Aave
611
610
  :param multiplier: Leverage multiplier. Total loop collateral will be calculated as `multiplier` x `initial_collateral_amount`
612
611
  :param max_slippage_percent: Maximum allowed slippage for token swaps in percentage
613
612
  :param loan_to_value: Loan To Value percentage of the loop
613
+ :param signed_authorization: EIP-7702 authorization. Required when `is_account_abstraction` is False.
614
+ :param is_account_abstraction: Whether to use account abstraction for the transaction.
614
615
  :param retries: Override the default retry configuration for this method
615
616
  :param server_url: Override the default server URL for this method
616
617
  :param timeout_ms: Override the default request timeout configuration for this method in milliseconds
@@ -630,7 +631,7 @@ class TransactionBundler(BaseSDK):
630
631
  chain=chain,
631
632
  sender=sender,
632
633
  signed_authorization=utils.get_pydantic_model(
633
- signed_authorization, models.SignedAuthorization
634
+ signed_authorization, OptionalNullable[models.SignedAuthorization]
634
635
  ),
635
636
  collateral_token=collateral_token,
636
637
  borrow_token=borrow_token,
@@ -638,11 +639,12 @@ class TransactionBundler(BaseSDK):
638
639
  multiplier=multiplier,
639
640
  max_slippage_percent=max_slippage_percent,
640
641
  loan_to_value=loan_to_value,
642
+ is_account_abstraction=is_account_abstraction,
641
643
  )
642
644
 
643
645
  req = self._build_request_async(
644
646
  method="POST",
645
- path="/v0/transaction_bundler/aave/loop",
647
+ path="/v1/transaction_bundler/aave/loop",
646
648
  base_url=base_url,
647
649
  url_variables=url_variables,
648
650
  request=request,
@@ -671,7 +673,7 @@ class TransactionBundler(BaseSDK):
671
673
  hook_ctx=HookContext(
672
674
  config=self.sdk_configuration,
673
675
  base_url=base_url or "",
674
- operation_id="transaction_bundler_aave_loop",
676
+ operation_id="v1_transaction_bundler_aave_loop",
675
677
  oauth2_scopes=[],
676
678
  security_source=self.sdk_configuration.security,
677
679
  ),
@@ -683,7 +685,7 @@ class TransactionBundler(BaseSDK):
683
685
  response_data: Any = None
684
686
  if utils.match_response(http_res, "200", "application/json"):
685
687
  return unmarshal_json_response(
686
- models.UnsignedMulticallTransaction, http_res
688
+ models.ResponseV1TransactionBundlerAaveLoop, http_res
687
689
  )
688
690
  if utils.match_response(http_res, "422", "application/json"):
689
691
  response_data = unmarshal_json_response(