crypticorn 2.16.0__py3-none-any.whl → 2.17.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.
Files changed (164) hide show
  1. crypticorn/__init__.py +2 -2
  2. crypticorn/auth/client/api/admin_api.py +397 -13
  3. crypticorn/auth/client/api/auth_api.py +3610 -341
  4. crypticorn/auth/client/api/service_api.py +249 -7
  5. crypticorn/auth/client/api/user_api.py +2295 -179
  6. crypticorn/auth/client/api/wallet_api.py +1468 -81
  7. crypticorn/auth/client/configuration.py +2 -2
  8. crypticorn/auth/client/models/create_api_key_request.py +2 -1
  9. crypticorn/auth/client/models/get_api_keys200_response_inner.py +2 -1
  10. crypticorn/auth/client/rest.py +23 -4
  11. crypticorn/auth/main.py +8 -5
  12. crypticorn/cli/init.py +1 -1
  13. crypticorn/cli/templates/.env.docker.temp +3 -0
  14. crypticorn/cli/templates/.env.example.temp +4 -0
  15. crypticorn/cli/templates/Dockerfile +5 -2
  16. crypticorn/client.py +226 -59
  17. crypticorn/common/__init__.py +1 -0
  18. crypticorn/common/auth.py +45 -14
  19. crypticorn/common/decorators.py +1 -2
  20. crypticorn/common/enums.py +0 -2
  21. crypticorn/common/errors.py +10 -0
  22. crypticorn/common/metrics.py +30 -0
  23. crypticorn/common/middleware.py +94 -1
  24. crypticorn/common/pagination.py +252 -20
  25. crypticorn/common/router/admin_router.py +2 -2
  26. crypticorn/common/router/status_router.py +40 -2
  27. crypticorn/common/scopes.py +2 -2
  28. crypticorn/common/warnings.py +7 -0
  29. crypticorn/dex/__init__.py +6 -0
  30. crypticorn/dex/client/__init__.py +49 -0
  31. crypticorn/dex/client/api/__init__.py +6 -0
  32. crypticorn/dex/client/api/admin_api.py +2986 -0
  33. crypticorn/dex/client/api/signals_api.py +1798 -0
  34. crypticorn/dex/client/api/status_api.py +892 -0
  35. crypticorn/dex/client/api_client.py +758 -0
  36. crypticorn/dex/client/api_response.py +20 -0
  37. crypticorn/dex/client/configuration.py +620 -0
  38. crypticorn/dex/client/exceptions.py +220 -0
  39. crypticorn/dex/client/models/__init__.py +30 -0
  40. crypticorn/dex/client/models/api_error_identifier.py +121 -0
  41. crypticorn/dex/client/models/api_error_level.py +37 -0
  42. crypticorn/dex/client/models/api_error_type.py +37 -0
  43. crypticorn/dex/client/models/exception_detail.py +117 -0
  44. crypticorn/dex/client/models/log_level.py +38 -0
  45. crypticorn/dex/client/models/paginated_response_signal_with_token.py +134 -0
  46. crypticorn/dex/client/models/risk.py +86 -0
  47. crypticorn/dex/client/models/signal_overview_stats.py +158 -0
  48. crypticorn/dex/client/models/signal_volume.py +84 -0
  49. crypticorn/dex/client/models/signal_with_token.py +163 -0
  50. crypticorn/dex/client/models/token_data.py +127 -0
  51. crypticorn/dex/client/models/token_detail.py +116 -0
  52. crypticorn/dex/client/py.typed +0 -0
  53. crypticorn/dex/client/rest.py +217 -0
  54. crypticorn/dex/main.py +1 -0
  55. crypticorn/hive/client/api/admin_api.py +1173 -47
  56. crypticorn/hive/client/api/data_api.py +499 -17
  57. crypticorn/hive/client/api/models_api.py +1595 -87
  58. crypticorn/hive/client/api/status_api.py +397 -16
  59. crypticorn/hive/client/api_client.py +0 -5
  60. crypticorn/hive/client/models/api_error_identifier.py +1 -1
  61. crypticorn/hive/client/models/coin_info.py +1 -1
  62. crypticorn/hive/client/models/exception_detail.py +1 -1
  63. crypticorn/hive/client/models/target_info.py +1 -1
  64. crypticorn/hive/client/rest.py +23 -4
  65. crypticorn/hive/main.py +99 -25
  66. crypticorn/hive/utils.py +2 -2
  67. crypticorn/klines/client/api/admin_api.py +1173 -47
  68. crypticorn/klines/client/api/change_in_timeframe_api.py +269 -11
  69. crypticorn/klines/client/api/funding_rates_api.py +315 -11
  70. crypticorn/klines/client/api/ohlcv_data_api.py +390 -11
  71. crypticorn/klines/client/api/status_api.py +397 -16
  72. crypticorn/klines/client/api/symbols_api.py +216 -11
  73. crypticorn/klines/client/api/udf_api.py +1268 -51
  74. crypticorn/klines/client/api_client.py +0 -5
  75. crypticorn/klines/client/models/api_error_identifier.py +3 -1
  76. crypticorn/klines/client/models/exception_detail.py +1 -1
  77. crypticorn/klines/client/models/ohlcv.py +1 -1
  78. crypticorn/klines/client/models/symbol_group.py +1 -1
  79. crypticorn/klines/client/models/udf_config.py +1 -1
  80. crypticorn/klines/client/rest.py +23 -4
  81. crypticorn/klines/main.py +89 -12
  82. crypticorn/metrics/client/api/admin_api.py +1173 -47
  83. crypticorn/metrics/client/api/exchanges_api.py +1370 -145
  84. crypticorn/metrics/client/api/indicators_api.py +622 -17
  85. crypticorn/metrics/client/api/logs_api.py +296 -11
  86. crypticorn/metrics/client/api/marketcap_api.py +1207 -67
  87. crypticorn/metrics/client/api/markets_api.py +343 -11
  88. crypticorn/metrics/client/api/quote_currencies_api.py +228 -11
  89. crypticorn/metrics/client/api/status_api.py +397 -16
  90. crypticorn/metrics/client/api/tokens_api.py +382 -15
  91. crypticorn/metrics/client/api_client.py +0 -5
  92. crypticorn/metrics/client/configuration.py +4 -2
  93. crypticorn/metrics/client/models/exception_detail.py +1 -1
  94. crypticorn/metrics/client/models/exchange_mapping.py +1 -1
  95. crypticorn/metrics/client/models/marketcap_ranking.py +1 -1
  96. crypticorn/metrics/client/models/marketcap_symbol_ranking.py +1 -1
  97. crypticorn/metrics/client/models/ohlcv.py +1 -1
  98. crypticorn/metrics/client/rest.py +23 -4
  99. crypticorn/metrics/main.py +113 -19
  100. crypticorn/pay/client/api/admin_api.py +1585 -57
  101. crypticorn/pay/client/api/now_payments_api.py +961 -39
  102. crypticorn/pay/client/api/payments_api.py +562 -17
  103. crypticorn/pay/client/api/products_api.py +880 -30
  104. crypticorn/pay/client/api/status_api.py +397 -16
  105. crypticorn/pay/client/api_client.py +0 -5
  106. crypticorn/pay/client/configuration.py +2 -2
  107. crypticorn/pay/client/models/api_error_identifier.py +7 -7
  108. crypticorn/pay/client/models/exception_detail.py +1 -1
  109. crypticorn/pay/client/models/now_create_invoice_req.py +1 -1
  110. crypticorn/pay/client/models/now_create_invoice_res.py +1 -1
  111. crypticorn/pay/client/models/product.py +1 -1
  112. crypticorn/pay/client/models/product_create.py +1 -1
  113. crypticorn/pay/client/models/product_update.py +1 -1
  114. crypticorn/pay/client/models/scope.py +1 -0
  115. crypticorn/pay/client/rest.py +23 -4
  116. crypticorn/pay/main.py +10 -6
  117. crypticorn/trade/client/__init__.py +11 -1
  118. crypticorn/trade/client/api/__init__.py +0 -1
  119. crypticorn/trade/client/api/admin_api.py +1184 -55
  120. crypticorn/trade/client/api/api_keys_api.py +1678 -162
  121. crypticorn/trade/client/api/bots_api.py +7563 -187
  122. crypticorn/trade/client/api/exchanges_api.py +565 -19
  123. crypticorn/trade/client/api/notifications_api.py +1290 -116
  124. crypticorn/trade/client/api/orders_api.py +393 -55
  125. crypticorn/trade/client/api/status_api.py +397 -13
  126. crypticorn/trade/client/api/strategies_api.py +1133 -77
  127. crypticorn/trade/client/api/trading_actions_api.py +786 -65
  128. crypticorn/trade/client/models/__init__.py +11 -0
  129. crypticorn/trade/client/models/actions_count.py +88 -0
  130. crypticorn/trade/client/models/api_error_identifier.py +1 -0
  131. crypticorn/trade/client/models/bot.py +7 -18
  132. crypticorn/trade/client/models/bot_create.py +17 -1
  133. crypticorn/trade/client/models/bot_update.py +17 -1
  134. crypticorn/trade/client/models/exchange.py +6 -1
  135. crypticorn/trade/client/models/exchange_key.py +1 -1
  136. crypticorn/trade/client/models/exchange_key_balance.py +111 -0
  137. crypticorn/trade/client/models/exchange_key_create.py +17 -1
  138. crypticorn/trade/client/models/exchange_key_update.py +17 -1
  139. crypticorn/trade/client/models/execution_ids.py +1 -1
  140. crypticorn/trade/client/models/futures_balance.py +27 -25
  141. crypticorn/trade/client/models/notification.py +17 -1
  142. crypticorn/trade/client/models/notification_create.py +18 -2
  143. crypticorn/trade/client/models/notification_update.py +17 -1
  144. crypticorn/trade/client/models/orders_count.py +88 -0
  145. crypticorn/trade/client/models/paginated_response_futures_trading_action.py +134 -0
  146. crypticorn/trade/client/models/paginated_response_order.py +134 -0
  147. crypticorn/trade/client/models/pn_l.py +95 -0
  148. crypticorn/trade/client/models/post_futures_action.py +1 -1
  149. crypticorn/trade/client/models/spot_balance.py +109 -0
  150. crypticorn/trade/client/models/strategy.py +22 -4
  151. crypticorn/trade/client/models/strategy_create.py +23 -5
  152. crypticorn/trade/client/models/strategy_exchange_info.py +16 -4
  153. crypticorn/trade/client/models/strategy_update.py +19 -3
  154. crypticorn/trade/client/models/tpsl.py +4 -19
  155. crypticorn/trade/client/models/tpsl_create.py +6 -19
  156. crypticorn/trade/client/rest.py +23 -4
  157. crypticorn/trade/main.py +15 -12
  158. {crypticorn-2.16.0.dist-info → crypticorn-2.17.0.dist-info}/METADATA +65 -20
  159. {crypticorn-2.16.0.dist-info → crypticorn-2.17.0.dist-info}/RECORD +163 -128
  160. crypticorn/trade/client/api/futures_trading_panel_api.py +0 -1285
  161. {crypticorn-2.16.0.dist-info → crypticorn-2.17.0.dist-info}/WHEEL +0 -0
  162. {crypticorn-2.16.0.dist-info → crypticorn-2.17.0.dist-info}/entry_points.txt +0 -0
  163. {crypticorn-2.16.0.dist-info → crypticorn-2.17.0.dist-info}/licenses/LICENSE +0 -0
  164. {crypticorn-2.16.0.dist-info → crypticorn-2.17.0.dist-info}/top_level.txt +0 -0
@@ -16,10 +16,11 @@ from pydantic import validate_call, Field, StrictFloat, StrictStr, StrictInt
16
16
  from typing import Any, Dict, List, Optional, Tuple, Union
17
17
  from typing_extensions import Annotated
18
18
 
19
- from pydantic import Field, StrictBool, StrictInt, StrictStr
19
+ from pydantic import Field, StrictStr, field_validator
20
20
  from typing import List, Optional
21
21
  from typing_extensions import Annotated
22
22
  from crypticorn.trade.client.models.exchange_key import ExchangeKey
23
+ from crypticorn.trade.client.models.exchange_key_balance import ExchangeKeyBalance
23
24
  from crypticorn.trade.client.models.exchange_key_create import ExchangeKeyCreate
24
25
  from crypticorn.trade.client.models.exchange_key_update import ExchangeKeyUpdate
25
26
 
@@ -27,6 +28,24 @@ from crypticorn.trade.client.api_client import ApiClient, RequestSerialized
27
28
  from crypticorn.trade.client.api_response import ApiResponse
28
29
  from crypticorn.trade.client.rest import RESTResponseType
29
30
 
31
+ # Import async_to_sync for sync methods
32
+ try:
33
+ from asgiref.sync import async_to_sync
34
+
35
+ _HAS_ASGIREF = True
36
+ except ImportError:
37
+ _HAS_ASGIREF = False
38
+
39
+ def async_to_sync(async_func):
40
+ """Fallback decorator that raises an error if asgiref is not available."""
41
+
42
+ def wrapper(*args, **kwargs):
43
+ raise ImportError(
44
+ "asgiref is required for sync methods. Install with: pip install asgiref"
45
+ )
46
+
47
+ return wrapper
48
+
30
49
 
31
50
  class APIKeysApi:
32
51
  """NOTE: This class is auto generated by OpenAPI Generator
@@ -35,13 +54,126 @@ class APIKeysApi:
35
54
  Do not edit the class manually.
36
55
  """
37
56
 
38
- def __init__(self, api_client=None) -> None:
57
+ def __init__(self, api_client=None, is_sync: bool = False) -> None:
39
58
  if api_client is None:
40
59
  api_client = ApiClient.get_default()
41
60
  self.api_client = api_client
61
+ self.is_sync = is_sync
62
+
63
+ @validate_call
64
+ def create_exchange_key(
65
+ self,
66
+ exchange_key_create: ExchangeKeyCreate,
67
+ _request_timeout: Union[
68
+ None,
69
+ Annotated[StrictFloat, Field(gt=0)],
70
+ Tuple[
71
+ Annotated[StrictFloat, Field(gt=0)], Annotated[StrictFloat, Field(gt=0)]
72
+ ],
73
+ ] = None,
74
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
75
+ _content_type: Optional[StrictStr] = None,
76
+ _headers: Optional[Dict[StrictStr, Any]] = None,
77
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
78
+ ) -> ExchangeKey:
79
+ """Post Exchange Key"""
80
+ if self.is_sync:
81
+ return self._create_exchange_key_sync(
82
+ exchange_key_create=exchange_key_create,
83
+ _request_timeout=_request_timeout,
84
+ _request_auth=_request_auth,
85
+ _content_type=_content_type,
86
+ _headers=_headers,
87
+ _host_index=_host_index,
88
+ )
89
+
90
+ else:
91
+ return self._create_exchange_key_async(
92
+ exchange_key_create=exchange_key_create,
93
+ _request_timeout=_request_timeout,
94
+ _request_auth=_request_auth,
95
+ _content_type=_content_type,
96
+ _headers=_headers,
97
+ _host_index=_host_index,
98
+ )
99
+
100
+ @validate_call
101
+ def create_exchange_key_with_http_info(
102
+ self,
103
+ exchange_key_create: ExchangeKeyCreate,
104
+ _request_timeout: Union[
105
+ None,
106
+ Annotated[StrictFloat, Field(gt=0)],
107
+ Tuple[
108
+ Annotated[StrictFloat, Field(gt=0)], Annotated[StrictFloat, Field(gt=0)]
109
+ ],
110
+ ] = None,
111
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
112
+ _content_type: Optional[StrictStr] = None,
113
+ _headers: Optional[Dict[StrictStr, Any]] = None,
114
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
115
+ ) -> ApiResponse[ExchangeKey]:
116
+ """Post Exchange Key with HTTP info"""
117
+ if self.is_sync:
118
+ return self._create_exchange_key_sync_with_http_info(
119
+ exchange_key_create=exchange_key_create,
120
+ _request_timeout=_request_timeout,
121
+ _request_auth=_request_auth,
122
+ _content_type=_content_type,
123
+ _headers=_headers,
124
+ _host_index=_host_index,
125
+ )
126
+
127
+ else:
128
+ return self._create_exchange_key_async_with_http_info(
129
+ exchange_key_create=exchange_key_create,
130
+ _request_timeout=_request_timeout,
131
+ _request_auth=_request_auth,
132
+ _content_type=_content_type,
133
+ _headers=_headers,
134
+ _host_index=_host_index,
135
+ )
136
+
137
+ @validate_call
138
+ def create_exchange_key_without_preload_content(
139
+ self,
140
+ exchange_key_create: ExchangeKeyCreate,
141
+ _request_timeout: Union[
142
+ None,
143
+ Annotated[StrictFloat, Field(gt=0)],
144
+ Tuple[
145
+ Annotated[StrictFloat, Field(gt=0)], Annotated[StrictFloat, Field(gt=0)]
146
+ ],
147
+ ] = None,
148
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
149
+ _content_type: Optional[StrictStr] = None,
150
+ _headers: Optional[Dict[StrictStr, Any]] = None,
151
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
152
+ ) -> RESTResponseType:
153
+ """Post Exchange Key without preloading content"""
154
+ if self.is_sync:
155
+ return self._create_exchange_key_sync_without_preload_content(
156
+ exchange_key_create=exchange_key_create,
157
+ _request_timeout=_request_timeout,
158
+ _request_auth=_request_auth,
159
+ _content_type=_content_type,
160
+ _headers=_headers,
161
+ _host_index=_host_index,
162
+ )
163
+
164
+ else:
165
+ return self._create_exchange_key_async_without_preload_content(
166
+ exchange_key_create=exchange_key_create,
167
+ _request_timeout=_request_timeout,
168
+ _request_auth=_request_auth,
169
+ _content_type=_content_type,
170
+ _headers=_headers,
171
+ _host_index=_host_index,
172
+ )
42
173
 
174
+ # Private async implementation methods
43
175
  @validate_call
44
- async def create_exchange_key(
176
+ async def _create_exchange_key_async(
45
177
  self,
46
178
  exchange_key_create: ExchangeKeyCreate,
47
179
  _request_timeout: Union[
@@ -105,7 +237,7 @@ class APIKeysApi:
105
237
  ).data
106
238
 
107
239
  @validate_call
108
- async def create_exchange_key_with_http_info(
240
+ async def _create_exchange_key_async_with_http_info(
109
241
  self,
110
242
  exchange_key_create: ExchangeKeyCreate,
111
243
  _request_timeout: Union[
@@ -164,12 +296,11 @@ class APIKeysApi:
164
296
  )
165
297
  await response_data.read()
166
298
  return self.api_client.response_deserialize(
167
- response_data=response_data,
168
- response_types_map=_response_types_map,
299
+ response_data=response_data, response_types_map=_response_types_map
169
300
  )
170
301
 
171
302
  @validate_call
172
- async def create_exchange_key_without_preload_content(
303
+ async def _create_exchange_key_async_without_preload_content(
173
304
  self,
174
305
  exchange_key_create: ExchangeKeyCreate,
175
306
  _request_timeout: Union[
@@ -226,7 +357,86 @@ class APIKeysApi:
226
357
  response_data = await self.api_client.call_api(
227
358
  *_param, _request_timeout=_request_timeout
228
359
  )
229
- return response_data.response
360
+ return response_data
361
+
362
+ # Private sync implementation methods
363
+ @validate_call
364
+ def _create_exchange_key_sync(
365
+ self,
366
+ exchange_key_create: ExchangeKeyCreate,
367
+ _request_timeout: Union[
368
+ None,
369
+ Annotated[StrictFloat, Field(gt=0)],
370
+ Tuple[
371
+ Annotated[StrictFloat, Field(gt=0)], Annotated[StrictFloat, Field(gt=0)]
372
+ ],
373
+ ] = None,
374
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
375
+ _content_type: Optional[StrictStr] = None,
376
+ _headers: Optional[Dict[StrictStr, Any]] = None,
377
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
378
+ ) -> ExchangeKey:
379
+ """Synchronous version of create_exchange_key"""
380
+ return async_to_sync(self._create_exchange_key_async)(
381
+ exchange_key_create=exchange_key_create,
382
+ _request_timeout=_request_timeout,
383
+ _request_auth=_request_auth,
384
+ _content_type=_content_type,
385
+ _headers=_headers,
386
+ _host_index=_host_index,
387
+ )
388
+
389
+ @validate_call
390
+ def _create_exchange_key_sync_with_http_info(
391
+ self,
392
+ exchange_key_create: ExchangeKeyCreate,
393
+ _request_timeout: Union[
394
+ None,
395
+ Annotated[StrictFloat, Field(gt=0)],
396
+ Tuple[
397
+ Annotated[StrictFloat, Field(gt=0)], Annotated[StrictFloat, Field(gt=0)]
398
+ ],
399
+ ] = None,
400
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
401
+ _content_type: Optional[StrictStr] = None,
402
+ _headers: Optional[Dict[StrictStr, Any]] = None,
403
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
404
+ ) -> ApiResponse[ExchangeKey]:
405
+ """Synchronous version of create_exchange_key_with_http_info"""
406
+ return async_to_sync(self._create_exchange_key_async_with_http_info)(
407
+ exchange_key_create=exchange_key_create,
408
+ _request_timeout=_request_timeout,
409
+ _request_auth=_request_auth,
410
+ _content_type=_content_type,
411
+ _headers=_headers,
412
+ _host_index=_host_index,
413
+ )
414
+
415
+ @validate_call
416
+ def _create_exchange_key_sync_without_preload_content(
417
+ self,
418
+ exchange_key_create: ExchangeKeyCreate,
419
+ _request_timeout: Union[
420
+ None,
421
+ Annotated[StrictFloat, Field(gt=0)],
422
+ Tuple[
423
+ Annotated[StrictFloat, Field(gt=0)], Annotated[StrictFloat, Field(gt=0)]
424
+ ],
425
+ ] = None,
426
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
427
+ _content_type: Optional[StrictStr] = None,
428
+ _headers: Optional[Dict[StrictStr, Any]] = None,
429
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
430
+ ) -> RESTResponseType:
431
+ """Synchronous version of create_exchange_key_without_preload_content"""
432
+ return async_to_sync(self._create_exchange_key_async_without_preload_content)(
433
+ exchange_key_create=exchange_key_create,
434
+ _request_timeout=_request_timeout,
435
+ _request_auth=_request_auth,
436
+ _content_type=_content_type,
437
+ _headers=_headers,
438
+ _host_index=_host_index,
439
+ )
230
440
 
231
441
  def _create_exchange_key_serialize(
232
442
  self,
@@ -293,7 +503,119 @@ class APIKeysApi:
293
503
  )
294
504
 
295
505
  @validate_call
296
- async def delete_exchange_key(
506
+ def delete_exchange_key(
507
+ self,
508
+ id: Annotated[StrictStr, Field(description="The ID of the API key to delete.")],
509
+ _request_timeout: Union[
510
+ None,
511
+ Annotated[StrictFloat, Field(gt=0)],
512
+ Tuple[
513
+ Annotated[StrictFloat, Field(gt=0)], Annotated[StrictFloat, Field(gt=0)]
514
+ ],
515
+ ] = None,
516
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
517
+ _content_type: Optional[StrictStr] = None,
518
+ _headers: Optional[Dict[StrictStr, Any]] = None,
519
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
520
+ ) -> None:
521
+ """Delete Exchange Key"""
522
+ if self.is_sync:
523
+ return self._delete_exchange_key_sync(
524
+ id=id,
525
+ _request_timeout=_request_timeout,
526
+ _request_auth=_request_auth,
527
+ _content_type=_content_type,
528
+ _headers=_headers,
529
+ _host_index=_host_index,
530
+ )
531
+
532
+ else:
533
+ return self._delete_exchange_key_async(
534
+ id=id,
535
+ _request_timeout=_request_timeout,
536
+ _request_auth=_request_auth,
537
+ _content_type=_content_type,
538
+ _headers=_headers,
539
+ _host_index=_host_index,
540
+ )
541
+
542
+ @validate_call
543
+ def delete_exchange_key_with_http_info(
544
+ self,
545
+ id: Annotated[StrictStr, Field(description="The ID of the API key to delete.")],
546
+ _request_timeout: Union[
547
+ None,
548
+ Annotated[StrictFloat, Field(gt=0)],
549
+ Tuple[
550
+ Annotated[StrictFloat, Field(gt=0)], Annotated[StrictFloat, Field(gt=0)]
551
+ ],
552
+ ] = None,
553
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
554
+ _content_type: Optional[StrictStr] = None,
555
+ _headers: Optional[Dict[StrictStr, Any]] = None,
556
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
557
+ ) -> ApiResponse[None]:
558
+ """Delete Exchange Key with HTTP info"""
559
+ if self.is_sync:
560
+ return self._delete_exchange_key_sync_with_http_info(
561
+ id=id,
562
+ _request_timeout=_request_timeout,
563
+ _request_auth=_request_auth,
564
+ _content_type=_content_type,
565
+ _headers=_headers,
566
+ _host_index=_host_index,
567
+ )
568
+
569
+ else:
570
+ return self._delete_exchange_key_async_with_http_info(
571
+ id=id,
572
+ _request_timeout=_request_timeout,
573
+ _request_auth=_request_auth,
574
+ _content_type=_content_type,
575
+ _headers=_headers,
576
+ _host_index=_host_index,
577
+ )
578
+
579
+ @validate_call
580
+ def delete_exchange_key_without_preload_content(
581
+ self,
582
+ id: Annotated[StrictStr, Field(description="The ID of the API key to delete.")],
583
+ _request_timeout: Union[
584
+ None,
585
+ Annotated[StrictFloat, Field(gt=0)],
586
+ Tuple[
587
+ Annotated[StrictFloat, Field(gt=0)], Annotated[StrictFloat, Field(gt=0)]
588
+ ],
589
+ ] = None,
590
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
591
+ _content_type: Optional[StrictStr] = None,
592
+ _headers: Optional[Dict[StrictStr, Any]] = None,
593
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
594
+ ) -> RESTResponseType:
595
+ """Delete Exchange Key without preloading content"""
596
+ if self.is_sync:
597
+ return self._delete_exchange_key_sync_without_preload_content(
598
+ id=id,
599
+ _request_timeout=_request_timeout,
600
+ _request_auth=_request_auth,
601
+ _content_type=_content_type,
602
+ _headers=_headers,
603
+ _host_index=_host_index,
604
+ )
605
+
606
+ else:
607
+ return self._delete_exchange_key_async_without_preload_content(
608
+ id=id,
609
+ _request_timeout=_request_timeout,
610
+ _request_auth=_request_auth,
611
+ _content_type=_content_type,
612
+ _headers=_headers,
613
+ _host_index=_host_index,
614
+ )
615
+
616
+ # Private async implementation methods
617
+ @validate_call
618
+ async def _delete_exchange_key_async(
297
619
  self,
298
620
  id: Annotated[StrictStr, Field(description="The ID of the API key to delete.")],
299
621
  _request_timeout: Union[
@@ -357,7 +679,7 @@ class APIKeysApi:
357
679
  ).data
358
680
 
359
681
  @validate_call
360
- async def delete_exchange_key_with_http_info(
682
+ async def _delete_exchange_key_async_with_http_info(
361
683
  self,
362
684
  id: Annotated[StrictStr, Field(description="The ID of the API key to delete.")],
363
685
  _request_timeout: Union[
@@ -416,12 +738,11 @@ class APIKeysApi:
416
738
  )
417
739
  await response_data.read()
418
740
  return self.api_client.response_deserialize(
419
- response_data=response_data,
420
- response_types_map=_response_types_map,
741
+ response_data=response_data, response_types_map=_response_types_map
421
742
  )
422
743
 
423
744
  @validate_call
424
- async def delete_exchange_key_without_preload_content(
745
+ async def _delete_exchange_key_async_without_preload_content(
425
746
  self,
426
747
  id: Annotated[StrictStr, Field(description="The ID of the API key to delete.")],
427
748
  _request_timeout: Union[
@@ -478,66 +799,13 @@ class APIKeysApi:
478
799
  response_data = await self.api_client.call_api(
479
800
  *_param, _request_timeout=_request_timeout
480
801
  )
481
- return response_data.response
482
-
483
- def _delete_exchange_key_serialize(
484
- self,
485
- id,
486
- _request_auth,
487
- _content_type,
488
- _headers,
489
- _host_index,
490
- ) -> RequestSerialized:
491
-
492
- _host = None
493
-
494
- _collection_formats: Dict[str, str] = {}
495
-
496
- _path_params: Dict[str, str] = {}
497
- _query_params: List[Tuple[str, str]] = []
498
- _header_params: Dict[str, Optional[str]] = _headers or {}
499
- _form_params: List[Tuple[str, str]] = []
500
- _files: Dict[
501
- str, Union[str, bytes, List[str], List[bytes], List[Tuple[str, bytes]]]
502
- ] = {}
503
- _body_params: Optional[bytes] = None
504
-
505
- # process the path parameters
506
- if id is not None:
507
- _path_params["id"] = id
508
- # process the query parameters
509
- # process the header parameters
510
- # process the form parameters
511
- # process the body parameter
512
-
513
- # set the HTTP header `Accept`
514
- if "Accept" not in _header_params:
515
- _header_params["Accept"] = self.api_client.select_header_accept(
516
- ["application/json"]
517
- )
518
-
519
- # authentication setting
520
- _auth_settings: List[str] = ["APIKeyHeader", "HTTPBearer"]
521
-
522
- return self.api_client.param_serialize(
523
- method="DELETE",
524
- resource_path="/api-keys/{id}",
525
- path_params=_path_params,
526
- query_params=_query_params,
527
- header_params=_header_params,
528
- body=_body_params,
529
- post_params=_form_params,
530
- files=_files,
531
- auth_settings=_auth_settings,
532
- collection_formats=_collection_formats,
533
- _host=_host,
534
- _request_auth=_request_auth,
535
- )
802
+ return response_data
536
803
 
804
+ # Private sync implementation methods
537
805
  @validate_call
538
- async def get_exchange_key_by_id(
806
+ def _delete_exchange_key_sync(
539
807
  self,
540
- id: Annotated[StrictStr, Field(description="The ID of the API key to get.")],
808
+ id: Annotated[StrictStr, Field(description="The ID of the API key to delete.")],
541
809
  _request_timeout: Union[
542
810
  None,
543
811
  Annotated[StrictFloat, Field(gt=0)],
@@ -549,10 +817,658 @@ class APIKeysApi:
549
817
  _content_type: Optional[StrictStr] = None,
550
818
  _headers: Optional[Dict[StrictStr, Any]] = None,
551
819
  _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
552
- ) -> ExchangeKey:
553
- """Get Exchange Key By Id
554
-
555
- Get an exchange key by ID.
820
+ ) -> None:
821
+ """Synchronous version of delete_exchange_key"""
822
+ return async_to_sync(self._delete_exchange_key_async)(
823
+ id=id,
824
+ _request_timeout=_request_timeout,
825
+ _request_auth=_request_auth,
826
+ _content_type=_content_type,
827
+ _headers=_headers,
828
+ _host_index=_host_index,
829
+ )
830
+
831
+ @validate_call
832
+ def _delete_exchange_key_sync_with_http_info(
833
+ self,
834
+ id: Annotated[StrictStr, Field(description="The ID of the API key to delete.")],
835
+ _request_timeout: Union[
836
+ None,
837
+ Annotated[StrictFloat, Field(gt=0)],
838
+ Tuple[
839
+ Annotated[StrictFloat, Field(gt=0)], Annotated[StrictFloat, Field(gt=0)]
840
+ ],
841
+ ] = None,
842
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
843
+ _content_type: Optional[StrictStr] = None,
844
+ _headers: Optional[Dict[StrictStr, Any]] = None,
845
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
846
+ ) -> ApiResponse[None]:
847
+ """Synchronous version of delete_exchange_key_with_http_info"""
848
+ return async_to_sync(self._delete_exchange_key_async_with_http_info)(
849
+ id=id,
850
+ _request_timeout=_request_timeout,
851
+ _request_auth=_request_auth,
852
+ _content_type=_content_type,
853
+ _headers=_headers,
854
+ _host_index=_host_index,
855
+ )
856
+
857
+ @validate_call
858
+ def _delete_exchange_key_sync_without_preload_content(
859
+ self,
860
+ id: Annotated[StrictStr, Field(description="The ID of the API key to delete.")],
861
+ _request_timeout: Union[
862
+ None,
863
+ Annotated[StrictFloat, Field(gt=0)],
864
+ Tuple[
865
+ Annotated[StrictFloat, Field(gt=0)], Annotated[StrictFloat, Field(gt=0)]
866
+ ],
867
+ ] = None,
868
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
869
+ _content_type: Optional[StrictStr] = None,
870
+ _headers: Optional[Dict[StrictStr, Any]] = None,
871
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
872
+ ) -> RESTResponseType:
873
+ """Synchronous version of delete_exchange_key_without_preload_content"""
874
+ return async_to_sync(self._delete_exchange_key_async_without_preload_content)(
875
+ id=id,
876
+ _request_timeout=_request_timeout,
877
+ _request_auth=_request_auth,
878
+ _content_type=_content_type,
879
+ _headers=_headers,
880
+ _host_index=_host_index,
881
+ )
882
+
883
+ def _delete_exchange_key_serialize(
884
+ self,
885
+ id,
886
+ _request_auth,
887
+ _content_type,
888
+ _headers,
889
+ _host_index,
890
+ ) -> RequestSerialized:
891
+
892
+ _host = None
893
+
894
+ _collection_formats: Dict[str, str] = {}
895
+
896
+ _path_params: Dict[str, str] = {}
897
+ _query_params: List[Tuple[str, str]] = []
898
+ _header_params: Dict[str, Optional[str]] = _headers or {}
899
+ _form_params: List[Tuple[str, str]] = []
900
+ _files: Dict[
901
+ str, Union[str, bytes, List[str], List[bytes], List[Tuple[str, bytes]]]
902
+ ] = {}
903
+ _body_params: Optional[bytes] = None
904
+
905
+ # process the path parameters
906
+ if id is not None:
907
+ _path_params["id"] = id
908
+ # process the query parameters
909
+ # process the header parameters
910
+ # process the form parameters
911
+ # process the body parameter
912
+
913
+ # set the HTTP header `Accept`
914
+ if "Accept" not in _header_params:
915
+ _header_params["Accept"] = self.api_client.select_header_accept(
916
+ ["application/json"]
917
+ )
918
+
919
+ # authentication setting
920
+ _auth_settings: List[str] = ["APIKeyHeader", "HTTPBearer"]
921
+
922
+ return self.api_client.param_serialize(
923
+ method="DELETE",
924
+ resource_path="/api-keys/{id}",
925
+ path_params=_path_params,
926
+ query_params=_query_params,
927
+ header_params=_header_params,
928
+ body=_body_params,
929
+ post_params=_form_params,
930
+ files=_files,
931
+ auth_settings=_auth_settings,
932
+ collection_formats=_collection_formats,
933
+ _host=_host,
934
+ _request_auth=_request_auth,
935
+ )
936
+
937
+ @validate_call
938
+ def get_exchange_key_balances(
939
+ self,
940
+ _request_timeout: Union[
941
+ None,
942
+ Annotated[StrictFloat, Field(gt=0)],
943
+ Tuple[
944
+ Annotated[StrictFloat, Field(gt=0)], Annotated[StrictFloat, Field(gt=0)]
945
+ ],
946
+ ] = None,
947
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
948
+ _content_type: Optional[StrictStr] = None,
949
+ _headers: Optional[Dict[StrictStr, Any]] = None,
950
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
951
+ ) -> List[ExchangeKeyBalance]:
952
+ """Get Exchange Key Balances"""
953
+ if self.is_sync:
954
+ return self._get_exchange_key_balances_sync(
955
+ _request_timeout=_request_timeout,
956
+ _request_auth=_request_auth,
957
+ _content_type=_content_type,
958
+ _headers=_headers,
959
+ _host_index=_host_index,
960
+ )
961
+
962
+ else:
963
+ return self._get_exchange_key_balances_async(
964
+ _request_timeout=_request_timeout,
965
+ _request_auth=_request_auth,
966
+ _content_type=_content_type,
967
+ _headers=_headers,
968
+ _host_index=_host_index,
969
+ )
970
+
971
+ @validate_call
972
+ def get_exchange_key_balances_with_http_info(
973
+ self,
974
+ _request_timeout: Union[
975
+ None,
976
+ Annotated[StrictFloat, Field(gt=0)],
977
+ Tuple[
978
+ Annotated[StrictFloat, Field(gt=0)], Annotated[StrictFloat, Field(gt=0)]
979
+ ],
980
+ ] = None,
981
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
982
+ _content_type: Optional[StrictStr] = None,
983
+ _headers: Optional[Dict[StrictStr, Any]] = None,
984
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
985
+ ) -> ApiResponse[List[ExchangeKeyBalance]]:
986
+ """Get Exchange Key Balances with HTTP info"""
987
+ if self.is_sync:
988
+ return self._get_exchange_key_balances_sync_with_http_info(
989
+ _request_timeout=_request_timeout,
990
+ _request_auth=_request_auth,
991
+ _content_type=_content_type,
992
+ _headers=_headers,
993
+ _host_index=_host_index,
994
+ )
995
+
996
+ else:
997
+ return self._get_exchange_key_balances_async_with_http_info(
998
+ _request_timeout=_request_timeout,
999
+ _request_auth=_request_auth,
1000
+ _content_type=_content_type,
1001
+ _headers=_headers,
1002
+ _host_index=_host_index,
1003
+ )
1004
+
1005
+ @validate_call
1006
+ def get_exchange_key_balances_without_preload_content(
1007
+ self,
1008
+ _request_timeout: Union[
1009
+ None,
1010
+ Annotated[StrictFloat, Field(gt=0)],
1011
+ Tuple[
1012
+ Annotated[StrictFloat, Field(gt=0)], Annotated[StrictFloat, Field(gt=0)]
1013
+ ],
1014
+ ] = None,
1015
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
1016
+ _content_type: Optional[StrictStr] = None,
1017
+ _headers: Optional[Dict[StrictStr, Any]] = None,
1018
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
1019
+ ) -> RESTResponseType:
1020
+ """Get Exchange Key Balances without preloading content"""
1021
+ if self.is_sync:
1022
+ return self._get_exchange_key_balances_sync_without_preload_content(
1023
+ _request_timeout=_request_timeout,
1024
+ _request_auth=_request_auth,
1025
+ _content_type=_content_type,
1026
+ _headers=_headers,
1027
+ _host_index=_host_index,
1028
+ )
1029
+
1030
+ else:
1031
+ return self._get_exchange_key_balances_async_without_preload_content(
1032
+ _request_timeout=_request_timeout,
1033
+ _request_auth=_request_auth,
1034
+ _content_type=_content_type,
1035
+ _headers=_headers,
1036
+ _host_index=_host_index,
1037
+ )
1038
+
1039
+ # Private async implementation methods
1040
+ @validate_call
1041
+ async def _get_exchange_key_balances_async(
1042
+ self,
1043
+ _request_timeout: Union[
1044
+ None,
1045
+ Annotated[StrictFloat, Field(gt=0)],
1046
+ Tuple[
1047
+ Annotated[StrictFloat, Field(gt=0)], Annotated[StrictFloat, Field(gt=0)]
1048
+ ],
1049
+ ] = None,
1050
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
1051
+ _content_type: Optional[StrictStr] = None,
1052
+ _headers: Optional[Dict[StrictStr, Any]] = None,
1053
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
1054
+ ) -> List[ExchangeKeyBalance]:
1055
+ """Get Exchange Key Balances
1056
+
1057
+ Get the balances of all exchange keys.
1058
+
1059
+ :param _request_timeout: timeout setting for this request. If one
1060
+ number provided, it will be total request
1061
+ timeout. It can also be a pair (tuple) of
1062
+ (connection, read) timeouts.
1063
+ :type _request_timeout: int, tuple(int, int), optional
1064
+ :param _request_auth: set to override the auth_settings for an a single
1065
+ request; this effectively ignores the
1066
+ authentication in the spec for a single request.
1067
+ :type _request_auth: dict, optional
1068
+ :param _content_type: force content-type for the request.
1069
+ :type _content_type: str, Optional
1070
+ :param _headers: set to override the headers for a single
1071
+ request; this effectively ignores the headers
1072
+ in the spec for a single request.
1073
+ :type _headers: dict, optional
1074
+ :param _host_index: set to override the host_index for a single
1075
+ request; this effectively ignores the host_index
1076
+ in the spec for a single request.
1077
+ :type _host_index: int, optional
1078
+ :return: Returns the result object.
1079
+ """ # noqa: E501
1080
+
1081
+ _param = self._get_exchange_key_balances_serialize(
1082
+ _request_auth=_request_auth,
1083
+ _content_type=_content_type,
1084
+ _headers=_headers,
1085
+ _host_index=_host_index,
1086
+ )
1087
+
1088
+ _response_types_map: Dict[str, Optional[str]] = {
1089
+ "200": "List[ExchangeKeyBalance]",
1090
+ }
1091
+ response_data = await self.api_client.call_api(
1092
+ *_param, _request_timeout=_request_timeout
1093
+ )
1094
+ await response_data.read()
1095
+ return self.api_client.response_deserialize(
1096
+ response_data=response_data,
1097
+ response_types_map=_response_types_map,
1098
+ ).data
1099
+
1100
+ @validate_call
1101
+ async def _get_exchange_key_balances_async_with_http_info(
1102
+ self,
1103
+ _request_timeout: Union[
1104
+ None,
1105
+ Annotated[StrictFloat, Field(gt=0)],
1106
+ Tuple[
1107
+ Annotated[StrictFloat, Field(gt=0)], Annotated[StrictFloat, Field(gt=0)]
1108
+ ],
1109
+ ] = None,
1110
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
1111
+ _content_type: Optional[StrictStr] = None,
1112
+ _headers: Optional[Dict[StrictStr, Any]] = None,
1113
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
1114
+ ) -> ApiResponse[List[ExchangeKeyBalance]]:
1115
+ """Get Exchange Key Balances
1116
+
1117
+ Get the balances of all exchange keys.
1118
+
1119
+ :param _request_timeout: timeout setting for this request. If one
1120
+ number provided, it will be total request
1121
+ timeout. It can also be a pair (tuple) of
1122
+ (connection, read) timeouts.
1123
+ :type _request_timeout: int, tuple(int, int), optional
1124
+ :param _request_auth: set to override the auth_settings for an a single
1125
+ request; this effectively ignores the
1126
+ authentication in the spec for a single request.
1127
+ :type _request_auth: dict, optional
1128
+ :param _content_type: force content-type for the request.
1129
+ :type _content_type: str, Optional
1130
+ :param _headers: set to override the headers for a single
1131
+ request; this effectively ignores the headers
1132
+ in the spec for a single request.
1133
+ :type _headers: dict, optional
1134
+ :param _host_index: set to override the host_index for a single
1135
+ request; this effectively ignores the host_index
1136
+ in the spec for a single request.
1137
+ :type _host_index: int, optional
1138
+ :return: Returns the result object.
1139
+ """ # noqa: E501
1140
+
1141
+ _param = self._get_exchange_key_balances_serialize(
1142
+ _request_auth=_request_auth,
1143
+ _content_type=_content_type,
1144
+ _headers=_headers,
1145
+ _host_index=_host_index,
1146
+ )
1147
+
1148
+ _response_types_map: Dict[str, Optional[str]] = {
1149
+ "200": "List[ExchangeKeyBalance]",
1150
+ }
1151
+ response_data = await self.api_client.call_api(
1152
+ *_param, _request_timeout=_request_timeout
1153
+ )
1154
+ await response_data.read()
1155
+ return self.api_client.response_deserialize(
1156
+ response_data=response_data, response_types_map=_response_types_map
1157
+ )
1158
+
1159
+ @validate_call
1160
+ async def _get_exchange_key_balances_async_without_preload_content(
1161
+ self,
1162
+ _request_timeout: Union[
1163
+ None,
1164
+ Annotated[StrictFloat, Field(gt=0)],
1165
+ Tuple[
1166
+ Annotated[StrictFloat, Field(gt=0)], Annotated[StrictFloat, Field(gt=0)]
1167
+ ],
1168
+ ] = None,
1169
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
1170
+ _content_type: Optional[StrictStr] = None,
1171
+ _headers: Optional[Dict[StrictStr, Any]] = None,
1172
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
1173
+ ) -> RESTResponseType:
1174
+ """Get Exchange Key Balances
1175
+
1176
+ Get the balances of all exchange keys.
1177
+
1178
+ :param _request_timeout: timeout setting for this request. If one
1179
+ number provided, it will be total request
1180
+ timeout. It can also be a pair (tuple) of
1181
+ (connection, read) timeouts.
1182
+ :type _request_timeout: int, tuple(int, int), optional
1183
+ :param _request_auth: set to override the auth_settings for an a single
1184
+ request; this effectively ignores the
1185
+ authentication in the spec for a single request.
1186
+ :type _request_auth: dict, optional
1187
+ :param _content_type: force content-type for the request.
1188
+ :type _content_type: str, Optional
1189
+ :param _headers: set to override the headers for a single
1190
+ request; this effectively ignores the headers
1191
+ in the spec for a single request.
1192
+ :type _headers: dict, optional
1193
+ :param _host_index: set to override the host_index for a single
1194
+ request; this effectively ignores the host_index
1195
+ in the spec for a single request.
1196
+ :type _host_index: int, optional
1197
+ :return: Returns the result object.
1198
+ """ # noqa: E501
1199
+
1200
+ _param = self._get_exchange_key_balances_serialize(
1201
+ _request_auth=_request_auth,
1202
+ _content_type=_content_type,
1203
+ _headers=_headers,
1204
+ _host_index=_host_index,
1205
+ )
1206
+
1207
+ _response_types_map: Dict[str, Optional[str]] = {
1208
+ "200": "List[ExchangeKeyBalance]",
1209
+ }
1210
+ response_data = await self.api_client.call_api(
1211
+ *_param, _request_timeout=_request_timeout
1212
+ )
1213
+ return response_data
1214
+
1215
+ # Private sync implementation methods
1216
+ @validate_call
1217
+ def _get_exchange_key_balances_sync(
1218
+ self,
1219
+ _request_timeout: Union[
1220
+ None,
1221
+ Annotated[StrictFloat, Field(gt=0)],
1222
+ Tuple[
1223
+ Annotated[StrictFloat, Field(gt=0)], Annotated[StrictFloat, Field(gt=0)]
1224
+ ],
1225
+ ] = None,
1226
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
1227
+ _content_type: Optional[StrictStr] = None,
1228
+ _headers: Optional[Dict[StrictStr, Any]] = None,
1229
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
1230
+ ) -> List[ExchangeKeyBalance]:
1231
+ """Synchronous version of get_exchange_key_balances"""
1232
+ return async_to_sync(self._get_exchange_key_balances_async)(
1233
+ _request_timeout=_request_timeout,
1234
+ _request_auth=_request_auth,
1235
+ _content_type=_content_type,
1236
+ _headers=_headers,
1237
+ _host_index=_host_index,
1238
+ )
1239
+
1240
+ @validate_call
1241
+ def _get_exchange_key_balances_sync_with_http_info(
1242
+ self,
1243
+ _request_timeout: Union[
1244
+ None,
1245
+ Annotated[StrictFloat, Field(gt=0)],
1246
+ Tuple[
1247
+ Annotated[StrictFloat, Field(gt=0)], Annotated[StrictFloat, Field(gt=0)]
1248
+ ],
1249
+ ] = None,
1250
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
1251
+ _content_type: Optional[StrictStr] = None,
1252
+ _headers: Optional[Dict[StrictStr, Any]] = None,
1253
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
1254
+ ) -> ApiResponse[List[ExchangeKeyBalance]]:
1255
+ """Synchronous version of get_exchange_key_balances_with_http_info"""
1256
+ return async_to_sync(self._get_exchange_key_balances_async_with_http_info)(
1257
+ _request_timeout=_request_timeout,
1258
+ _request_auth=_request_auth,
1259
+ _content_type=_content_type,
1260
+ _headers=_headers,
1261
+ _host_index=_host_index,
1262
+ )
1263
+
1264
+ @validate_call
1265
+ def _get_exchange_key_balances_sync_without_preload_content(
1266
+ self,
1267
+ _request_timeout: Union[
1268
+ None,
1269
+ Annotated[StrictFloat, Field(gt=0)],
1270
+ Tuple[
1271
+ Annotated[StrictFloat, Field(gt=0)], Annotated[StrictFloat, Field(gt=0)]
1272
+ ],
1273
+ ] = None,
1274
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
1275
+ _content_type: Optional[StrictStr] = None,
1276
+ _headers: Optional[Dict[StrictStr, Any]] = None,
1277
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
1278
+ ) -> RESTResponseType:
1279
+ """Synchronous version of get_exchange_key_balances_without_preload_content"""
1280
+ return async_to_sync(
1281
+ self._get_exchange_key_balances_async_without_preload_content
1282
+ )(
1283
+ _request_timeout=_request_timeout,
1284
+ _request_auth=_request_auth,
1285
+ _content_type=_content_type,
1286
+ _headers=_headers,
1287
+ _host_index=_host_index,
1288
+ )
1289
+
1290
+ def _get_exchange_key_balances_serialize(
1291
+ self,
1292
+ _request_auth,
1293
+ _content_type,
1294
+ _headers,
1295
+ _host_index,
1296
+ ) -> RequestSerialized:
1297
+
1298
+ _host = None
1299
+
1300
+ _collection_formats: Dict[str, str] = {}
1301
+
1302
+ _path_params: Dict[str, str] = {}
1303
+ _query_params: List[Tuple[str, str]] = []
1304
+ _header_params: Dict[str, Optional[str]] = _headers or {}
1305
+ _form_params: List[Tuple[str, str]] = []
1306
+ _files: Dict[
1307
+ str, Union[str, bytes, List[str], List[bytes], List[Tuple[str, bytes]]]
1308
+ ] = {}
1309
+ _body_params: Optional[bytes] = None
1310
+
1311
+ # process the path parameters
1312
+ # process the query parameters
1313
+ # process the header parameters
1314
+ # process the form parameters
1315
+ # process the body parameter
1316
+
1317
+ # set the HTTP header `Accept`
1318
+ if "Accept" not in _header_params:
1319
+ _header_params["Accept"] = self.api_client.select_header_accept(
1320
+ ["application/json"]
1321
+ )
1322
+
1323
+ # authentication setting
1324
+ _auth_settings: List[str] = ["APIKeyHeader", "HTTPBearer"]
1325
+
1326
+ return self.api_client.param_serialize(
1327
+ method="GET",
1328
+ resource_path="/api-keys/balances",
1329
+ path_params=_path_params,
1330
+ query_params=_query_params,
1331
+ header_params=_header_params,
1332
+ body=_body_params,
1333
+ post_params=_form_params,
1334
+ files=_files,
1335
+ auth_settings=_auth_settings,
1336
+ collection_formats=_collection_formats,
1337
+ _host=_host,
1338
+ _request_auth=_request_auth,
1339
+ )
1340
+
1341
+ @validate_call
1342
+ def get_exchange_key_by_id(
1343
+ self,
1344
+ id: Annotated[StrictStr, Field(description="The ID of the API key to get.")],
1345
+ _request_timeout: Union[
1346
+ None,
1347
+ Annotated[StrictFloat, Field(gt=0)],
1348
+ Tuple[
1349
+ Annotated[StrictFloat, Field(gt=0)], Annotated[StrictFloat, Field(gt=0)]
1350
+ ],
1351
+ ] = None,
1352
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
1353
+ _content_type: Optional[StrictStr] = None,
1354
+ _headers: Optional[Dict[StrictStr, Any]] = None,
1355
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
1356
+ ) -> ExchangeKey:
1357
+ """Get Exchange Key By Id"""
1358
+ if self.is_sync:
1359
+ return self._get_exchange_key_by_id_sync(
1360
+ id=id,
1361
+ _request_timeout=_request_timeout,
1362
+ _request_auth=_request_auth,
1363
+ _content_type=_content_type,
1364
+ _headers=_headers,
1365
+ _host_index=_host_index,
1366
+ )
1367
+
1368
+ else:
1369
+ return self._get_exchange_key_by_id_async(
1370
+ id=id,
1371
+ _request_timeout=_request_timeout,
1372
+ _request_auth=_request_auth,
1373
+ _content_type=_content_type,
1374
+ _headers=_headers,
1375
+ _host_index=_host_index,
1376
+ )
1377
+
1378
+ @validate_call
1379
+ def get_exchange_key_by_id_with_http_info(
1380
+ self,
1381
+ id: Annotated[StrictStr, Field(description="The ID of the API key to get.")],
1382
+ _request_timeout: Union[
1383
+ None,
1384
+ Annotated[StrictFloat, Field(gt=0)],
1385
+ Tuple[
1386
+ Annotated[StrictFloat, Field(gt=0)], Annotated[StrictFloat, Field(gt=0)]
1387
+ ],
1388
+ ] = None,
1389
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
1390
+ _content_type: Optional[StrictStr] = None,
1391
+ _headers: Optional[Dict[StrictStr, Any]] = None,
1392
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
1393
+ ) -> ApiResponse[ExchangeKey]:
1394
+ """Get Exchange Key By Id with HTTP info"""
1395
+ if self.is_sync:
1396
+ return self._get_exchange_key_by_id_sync_with_http_info(
1397
+ id=id,
1398
+ _request_timeout=_request_timeout,
1399
+ _request_auth=_request_auth,
1400
+ _content_type=_content_type,
1401
+ _headers=_headers,
1402
+ _host_index=_host_index,
1403
+ )
1404
+
1405
+ else:
1406
+ return self._get_exchange_key_by_id_async_with_http_info(
1407
+ id=id,
1408
+ _request_timeout=_request_timeout,
1409
+ _request_auth=_request_auth,
1410
+ _content_type=_content_type,
1411
+ _headers=_headers,
1412
+ _host_index=_host_index,
1413
+ )
1414
+
1415
+ @validate_call
1416
+ def get_exchange_key_by_id_without_preload_content(
1417
+ self,
1418
+ id: Annotated[StrictStr, Field(description="The ID of the API key to get.")],
1419
+ _request_timeout: Union[
1420
+ None,
1421
+ Annotated[StrictFloat, Field(gt=0)],
1422
+ Tuple[
1423
+ Annotated[StrictFloat, Field(gt=0)], Annotated[StrictFloat, Field(gt=0)]
1424
+ ],
1425
+ ] = None,
1426
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
1427
+ _content_type: Optional[StrictStr] = None,
1428
+ _headers: Optional[Dict[StrictStr, Any]] = None,
1429
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
1430
+ ) -> RESTResponseType:
1431
+ """Get Exchange Key By Id without preloading content"""
1432
+ if self.is_sync:
1433
+ return self._get_exchange_key_by_id_sync_without_preload_content(
1434
+ id=id,
1435
+ _request_timeout=_request_timeout,
1436
+ _request_auth=_request_auth,
1437
+ _content_type=_content_type,
1438
+ _headers=_headers,
1439
+ _host_index=_host_index,
1440
+ )
1441
+
1442
+ else:
1443
+ return self._get_exchange_key_by_id_async_without_preload_content(
1444
+ id=id,
1445
+ _request_timeout=_request_timeout,
1446
+ _request_auth=_request_auth,
1447
+ _content_type=_content_type,
1448
+ _headers=_headers,
1449
+ _host_index=_host_index,
1450
+ )
1451
+
1452
+ # Private async implementation methods
1453
+ @validate_call
1454
+ async def _get_exchange_key_by_id_async(
1455
+ self,
1456
+ id: Annotated[StrictStr, Field(description="The ID of the API key to get.")],
1457
+ _request_timeout: Union[
1458
+ None,
1459
+ Annotated[StrictFloat, Field(gt=0)],
1460
+ Tuple[
1461
+ Annotated[StrictFloat, Field(gt=0)], Annotated[StrictFloat, Field(gt=0)]
1462
+ ],
1463
+ ] = None,
1464
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
1465
+ _content_type: Optional[StrictStr] = None,
1466
+ _headers: Optional[Dict[StrictStr, Any]] = None,
1467
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
1468
+ ) -> ExchangeKey:
1469
+ """Get Exchange Key By Id
1470
+
1471
+ Get an exchange key by ID.
556
1472
 
557
1473
  :param id: The ID of the API key to get. (required)
558
1474
  :type id: str
@@ -599,7 +1515,7 @@ class APIKeysApi:
599
1515
  ).data
600
1516
 
601
1517
  @validate_call
602
- async def get_exchange_key_by_id_with_http_info(
1518
+ async def _get_exchange_key_by_id_async_with_http_info(
603
1519
  self,
604
1520
  id: Annotated[StrictStr, Field(description="The ID of the API key to get.")],
605
1521
  _request_timeout: Union[
@@ -658,12 +1574,11 @@ class APIKeysApi:
658
1574
  )
659
1575
  await response_data.read()
660
1576
  return self.api_client.response_deserialize(
661
- response_data=response_data,
662
- response_types_map=_response_types_map,
1577
+ response_data=response_data, response_types_map=_response_types_map
663
1578
  )
664
1579
 
665
1580
  @validate_call
666
- async def get_exchange_key_by_id_without_preload_content(
1581
+ async def _get_exchange_key_by_id_async_without_preload_content(
667
1582
  self,
668
1583
  id: Annotated[StrictStr, Field(description="The ID of the API key to get.")],
669
1584
  _request_timeout: Union[
@@ -720,7 +1635,88 @@ class APIKeysApi:
720
1635
  response_data = await self.api_client.call_api(
721
1636
  *_param, _request_timeout=_request_timeout
722
1637
  )
723
- return response_data.response
1638
+ return response_data
1639
+
1640
+ # Private sync implementation methods
1641
+ @validate_call
1642
+ def _get_exchange_key_by_id_sync(
1643
+ self,
1644
+ id: Annotated[StrictStr, Field(description="The ID of the API key to get.")],
1645
+ _request_timeout: Union[
1646
+ None,
1647
+ Annotated[StrictFloat, Field(gt=0)],
1648
+ Tuple[
1649
+ Annotated[StrictFloat, Field(gt=0)], Annotated[StrictFloat, Field(gt=0)]
1650
+ ],
1651
+ ] = None,
1652
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
1653
+ _content_type: Optional[StrictStr] = None,
1654
+ _headers: Optional[Dict[StrictStr, Any]] = None,
1655
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
1656
+ ) -> ExchangeKey:
1657
+ """Synchronous version of get_exchange_key_by_id"""
1658
+ return async_to_sync(self._get_exchange_key_by_id_async)(
1659
+ id=id,
1660
+ _request_timeout=_request_timeout,
1661
+ _request_auth=_request_auth,
1662
+ _content_type=_content_type,
1663
+ _headers=_headers,
1664
+ _host_index=_host_index,
1665
+ )
1666
+
1667
+ @validate_call
1668
+ def _get_exchange_key_by_id_sync_with_http_info(
1669
+ self,
1670
+ id: Annotated[StrictStr, Field(description="The ID of the API key to get.")],
1671
+ _request_timeout: Union[
1672
+ None,
1673
+ Annotated[StrictFloat, Field(gt=0)],
1674
+ Tuple[
1675
+ Annotated[StrictFloat, Field(gt=0)], Annotated[StrictFloat, Field(gt=0)]
1676
+ ],
1677
+ ] = None,
1678
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
1679
+ _content_type: Optional[StrictStr] = None,
1680
+ _headers: Optional[Dict[StrictStr, Any]] = None,
1681
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
1682
+ ) -> ApiResponse[ExchangeKey]:
1683
+ """Synchronous version of get_exchange_key_by_id_with_http_info"""
1684
+ return async_to_sync(self._get_exchange_key_by_id_async_with_http_info)(
1685
+ id=id,
1686
+ _request_timeout=_request_timeout,
1687
+ _request_auth=_request_auth,
1688
+ _content_type=_content_type,
1689
+ _headers=_headers,
1690
+ _host_index=_host_index,
1691
+ )
1692
+
1693
+ @validate_call
1694
+ def _get_exchange_key_by_id_sync_without_preload_content(
1695
+ self,
1696
+ id: Annotated[StrictStr, Field(description="The ID of the API key to get.")],
1697
+ _request_timeout: Union[
1698
+ None,
1699
+ Annotated[StrictFloat, Field(gt=0)],
1700
+ Tuple[
1701
+ Annotated[StrictFloat, Field(gt=0)], Annotated[StrictFloat, Field(gt=0)]
1702
+ ],
1703
+ ] = None,
1704
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
1705
+ _content_type: Optional[StrictStr] = None,
1706
+ _headers: Optional[Dict[StrictStr, Any]] = None,
1707
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
1708
+ ) -> RESTResponseType:
1709
+ """Synchronous version of get_exchange_key_by_id_without_preload_content"""
1710
+ return async_to_sync(
1711
+ self._get_exchange_key_by_id_async_without_preload_content
1712
+ )(
1713
+ id=id,
1714
+ _request_timeout=_request_timeout,
1715
+ _request_auth=_request_auth,
1716
+ _content_type=_content_type,
1717
+ _headers=_headers,
1718
+ _host_index=_host_index,
1719
+ )
724
1720
 
725
1721
  def _get_exchange_key_by_id_serialize(
726
1722
  self,
@@ -758,32 +1754,201 @@ class APIKeysApi:
758
1754
  ["application/json"]
759
1755
  )
760
1756
 
761
- # authentication setting
762
- _auth_settings: List[str] = ["APIKeyHeader", "HTTPBearer"]
763
-
764
- return self.api_client.param_serialize(
765
- method="GET",
766
- resource_path="/api-keys/{id}",
767
- path_params=_path_params,
768
- query_params=_query_params,
769
- header_params=_header_params,
770
- body=_body_params,
771
- post_params=_form_params,
772
- files=_files,
773
- auth_settings=_auth_settings,
774
- collection_formats=_collection_formats,
775
- _host=_host,
776
- _request_auth=_request_auth,
777
- )
1757
+ # authentication setting
1758
+ _auth_settings: List[str] = ["APIKeyHeader", "HTTPBearer"]
1759
+
1760
+ return self.api_client.param_serialize(
1761
+ method="GET",
1762
+ resource_path="/api-keys/{id}",
1763
+ path_params=_path_params,
1764
+ query_params=_query_params,
1765
+ header_params=_header_params,
1766
+ body=_body_params,
1767
+ post_params=_form_params,
1768
+ files=_files,
1769
+ auth_settings=_auth_settings,
1770
+ collection_formats=_collection_formats,
1771
+ _host=_host,
1772
+ _request_auth=_request_auth,
1773
+ )
1774
+
1775
+ @validate_call
1776
+ def get_exchange_keys(
1777
+ self,
1778
+ filter_by: Annotated[
1779
+ Optional[StrictStr], Field(description="The field to filter by")
1780
+ ] = None,
1781
+ filter_value: Annotated[
1782
+ Optional[StrictStr], Field(description="The value to filter with")
1783
+ ] = None,
1784
+ sort_order: Annotated[
1785
+ Optional[StrictStr], Field(description="The order to sort by")
1786
+ ] = None,
1787
+ sort_by: Annotated[
1788
+ Optional[StrictStr], Field(description="The field to sort by")
1789
+ ] = None,
1790
+ _request_timeout: Union[
1791
+ None,
1792
+ Annotated[StrictFloat, Field(gt=0)],
1793
+ Tuple[
1794
+ Annotated[StrictFloat, Field(gt=0)], Annotated[StrictFloat, Field(gt=0)]
1795
+ ],
1796
+ ] = None,
1797
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
1798
+ _content_type: Optional[StrictStr] = None,
1799
+ _headers: Optional[Dict[StrictStr, Any]] = None,
1800
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
1801
+ ) -> List[ExchangeKey]:
1802
+ """Get Exchange Keys"""
1803
+ if self.is_sync:
1804
+ return self._get_exchange_keys_sync(
1805
+ filter_by=filter_by,
1806
+ filter_value=filter_value,
1807
+ sort_order=sort_order,
1808
+ sort_by=sort_by,
1809
+ _request_timeout=_request_timeout,
1810
+ _request_auth=_request_auth,
1811
+ _content_type=_content_type,
1812
+ _headers=_headers,
1813
+ _host_index=_host_index,
1814
+ )
1815
+
1816
+ else:
1817
+ return self._get_exchange_keys_async(
1818
+ filter_by=filter_by,
1819
+ filter_value=filter_value,
1820
+ sort_order=sort_order,
1821
+ sort_by=sort_by,
1822
+ _request_timeout=_request_timeout,
1823
+ _request_auth=_request_auth,
1824
+ _content_type=_content_type,
1825
+ _headers=_headers,
1826
+ _host_index=_host_index,
1827
+ )
1828
+
1829
+ @validate_call
1830
+ def get_exchange_keys_with_http_info(
1831
+ self,
1832
+ filter_by: Annotated[
1833
+ Optional[StrictStr], Field(description="The field to filter by")
1834
+ ] = None,
1835
+ filter_value: Annotated[
1836
+ Optional[StrictStr], Field(description="The value to filter with")
1837
+ ] = None,
1838
+ sort_order: Annotated[
1839
+ Optional[StrictStr], Field(description="The order to sort by")
1840
+ ] = None,
1841
+ sort_by: Annotated[
1842
+ Optional[StrictStr], Field(description="The field to sort by")
1843
+ ] = None,
1844
+ _request_timeout: Union[
1845
+ None,
1846
+ Annotated[StrictFloat, Field(gt=0)],
1847
+ Tuple[
1848
+ Annotated[StrictFloat, Field(gt=0)], Annotated[StrictFloat, Field(gt=0)]
1849
+ ],
1850
+ ] = None,
1851
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
1852
+ _content_type: Optional[StrictStr] = None,
1853
+ _headers: Optional[Dict[StrictStr, Any]] = None,
1854
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
1855
+ ) -> ApiResponse[List[ExchangeKey]]:
1856
+ """Get Exchange Keys with HTTP info"""
1857
+ if self.is_sync:
1858
+ return self._get_exchange_keys_sync_with_http_info(
1859
+ filter_by=filter_by,
1860
+ filter_value=filter_value,
1861
+ sort_order=sort_order,
1862
+ sort_by=sort_by,
1863
+ _request_timeout=_request_timeout,
1864
+ _request_auth=_request_auth,
1865
+ _content_type=_content_type,
1866
+ _headers=_headers,
1867
+ _host_index=_host_index,
1868
+ )
1869
+
1870
+ else:
1871
+ return self._get_exchange_keys_async_with_http_info(
1872
+ filter_by=filter_by,
1873
+ filter_value=filter_value,
1874
+ sort_order=sort_order,
1875
+ sort_by=sort_by,
1876
+ _request_timeout=_request_timeout,
1877
+ _request_auth=_request_auth,
1878
+ _content_type=_content_type,
1879
+ _headers=_headers,
1880
+ _host_index=_host_index,
1881
+ )
1882
+
1883
+ @validate_call
1884
+ def get_exchange_keys_without_preload_content(
1885
+ self,
1886
+ filter_by: Annotated[
1887
+ Optional[StrictStr], Field(description="The field to filter by")
1888
+ ] = None,
1889
+ filter_value: Annotated[
1890
+ Optional[StrictStr], Field(description="The value to filter with")
1891
+ ] = None,
1892
+ sort_order: Annotated[
1893
+ Optional[StrictStr], Field(description="The order to sort by")
1894
+ ] = None,
1895
+ sort_by: Annotated[
1896
+ Optional[StrictStr], Field(description="The field to sort by")
1897
+ ] = None,
1898
+ _request_timeout: Union[
1899
+ None,
1900
+ Annotated[StrictFloat, Field(gt=0)],
1901
+ Tuple[
1902
+ Annotated[StrictFloat, Field(gt=0)], Annotated[StrictFloat, Field(gt=0)]
1903
+ ],
1904
+ ] = None,
1905
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
1906
+ _content_type: Optional[StrictStr] = None,
1907
+ _headers: Optional[Dict[StrictStr, Any]] = None,
1908
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
1909
+ ) -> RESTResponseType:
1910
+ """Get Exchange Keys without preloading content"""
1911
+ if self.is_sync:
1912
+ return self._get_exchange_keys_sync_without_preload_content(
1913
+ filter_by=filter_by,
1914
+ filter_value=filter_value,
1915
+ sort_order=sort_order,
1916
+ sort_by=sort_by,
1917
+ _request_timeout=_request_timeout,
1918
+ _request_auth=_request_auth,
1919
+ _content_type=_content_type,
1920
+ _headers=_headers,
1921
+ _host_index=_host_index,
1922
+ )
1923
+
1924
+ else:
1925
+ return self._get_exchange_keys_async_without_preload_content(
1926
+ filter_by=filter_by,
1927
+ filter_value=filter_value,
1928
+ sort_order=sort_order,
1929
+ sort_by=sort_by,
1930
+ _request_timeout=_request_timeout,
1931
+ _request_auth=_request_auth,
1932
+ _content_type=_content_type,
1933
+ _headers=_headers,
1934
+ _host_index=_host_index,
1935
+ )
778
1936
 
1937
+ # Private async implementation methods
779
1938
  @validate_call
780
- async def get_exchange_keys(
1939
+ async def _get_exchange_keys_async(
781
1940
  self,
782
- limit: Optional[StrictInt] = None,
783
- offset: Optional[StrictInt] = None,
784
- include_deleted: Annotated[
785
- Optional[StrictBool],
786
- Field(description="Whether to include deleted API keys."),
1941
+ filter_by: Annotated[
1942
+ Optional[StrictStr], Field(description="The field to filter by")
1943
+ ] = None,
1944
+ filter_value: Annotated[
1945
+ Optional[StrictStr], Field(description="The value to filter with")
1946
+ ] = None,
1947
+ sort_order: Annotated[
1948
+ Optional[StrictStr], Field(description="The order to sort by")
1949
+ ] = None,
1950
+ sort_by: Annotated[
1951
+ Optional[StrictStr], Field(description="The field to sort by")
787
1952
  ] = None,
788
1953
  _request_timeout: Union[
789
1954
  None,
@@ -799,14 +1964,16 @@ class APIKeysApi:
799
1964
  ) -> List[ExchangeKey]:
800
1965
  """Get Exchange Keys
801
1966
 
802
- Get all exchange keys. If include_deleted is true, all API keys will be returned, including deleted ones.
1967
+ Get all exchange keys. Returns all non-deleted API keys by default.
803
1968
 
804
- :param limit:
805
- :type limit: int
806
- :param offset:
807
- :type offset: int
808
- :param include_deleted: Whether to include deleted API keys.
809
- :type include_deleted: bool
1969
+ :param filter_by: The field to filter by
1970
+ :type filter_by: str
1971
+ :param filter_value: The value to filter with
1972
+ :type filter_value: str
1973
+ :param sort_order: The order to sort by
1974
+ :type sort_order: str
1975
+ :param sort_by: The field to sort by
1976
+ :type sort_by: str
810
1977
  :param _request_timeout: timeout setting for this request. If one
811
1978
  number provided, it will be total request
812
1979
  timeout. It can also be a pair (tuple) of
@@ -830,9 +1997,10 @@ class APIKeysApi:
830
1997
  """ # noqa: E501
831
1998
 
832
1999
  _param = self._get_exchange_keys_serialize(
833
- limit=limit,
834
- offset=offset,
835
- include_deleted=include_deleted,
2000
+ filter_by=filter_by,
2001
+ filter_value=filter_value,
2002
+ sort_order=sort_order,
2003
+ sort_by=sort_by,
836
2004
  _request_auth=_request_auth,
837
2005
  _content_type=_content_type,
838
2006
  _headers=_headers,
@@ -852,13 +2020,19 @@ class APIKeysApi:
852
2020
  ).data
853
2021
 
854
2022
  @validate_call
855
- async def get_exchange_keys_with_http_info(
2023
+ async def _get_exchange_keys_async_with_http_info(
856
2024
  self,
857
- limit: Optional[StrictInt] = None,
858
- offset: Optional[StrictInt] = None,
859
- include_deleted: Annotated[
860
- Optional[StrictBool],
861
- Field(description="Whether to include deleted API keys."),
2025
+ filter_by: Annotated[
2026
+ Optional[StrictStr], Field(description="The field to filter by")
2027
+ ] = None,
2028
+ filter_value: Annotated[
2029
+ Optional[StrictStr], Field(description="The value to filter with")
2030
+ ] = None,
2031
+ sort_order: Annotated[
2032
+ Optional[StrictStr], Field(description="The order to sort by")
2033
+ ] = None,
2034
+ sort_by: Annotated[
2035
+ Optional[StrictStr], Field(description="The field to sort by")
862
2036
  ] = None,
863
2037
  _request_timeout: Union[
864
2038
  None,
@@ -874,14 +2048,16 @@ class APIKeysApi:
874
2048
  ) -> ApiResponse[List[ExchangeKey]]:
875
2049
  """Get Exchange Keys
876
2050
 
877
- Get all exchange keys. If include_deleted is true, all API keys will be returned, including deleted ones.
2051
+ Get all exchange keys. Returns all non-deleted API keys by default.
878
2052
 
879
- :param limit:
880
- :type limit: int
881
- :param offset:
882
- :type offset: int
883
- :param include_deleted: Whether to include deleted API keys.
884
- :type include_deleted: bool
2053
+ :param filter_by: The field to filter by
2054
+ :type filter_by: str
2055
+ :param filter_value: The value to filter with
2056
+ :type filter_value: str
2057
+ :param sort_order: The order to sort by
2058
+ :type sort_order: str
2059
+ :param sort_by: The field to sort by
2060
+ :type sort_by: str
885
2061
  :param _request_timeout: timeout setting for this request. If one
886
2062
  number provided, it will be total request
887
2063
  timeout. It can also be a pair (tuple) of
@@ -905,9 +2081,10 @@ class APIKeysApi:
905
2081
  """ # noqa: E501
906
2082
 
907
2083
  _param = self._get_exchange_keys_serialize(
908
- limit=limit,
909
- offset=offset,
910
- include_deleted=include_deleted,
2084
+ filter_by=filter_by,
2085
+ filter_value=filter_value,
2086
+ sort_order=sort_order,
2087
+ sort_by=sort_by,
911
2088
  _request_auth=_request_auth,
912
2089
  _content_type=_content_type,
913
2090
  _headers=_headers,
@@ -922,18 +2099,23 @@ class APIKeysApi:
922
2099
  )
923
2100
  await response_data.read()
924
2101
  return self.api_client.response_deserialize(
925
- response_data=response_data,
926
- response_types_map=_response_types_map,
2102
+ response_data=response_data, response_types_map=_response_types_map
927
2103
  )
928
2104
 
929
2105
  @validate_call
930
- async def get_exchange_keys_without_preload_content(
2106
+ async def _get_exchange_keys_async_without_preload_content(
931
2107
  self,
932
- limit: Optional[StrictInt] = None,
933
- offset: Optional[StrictInt] = None,
934
- include_deleted: Annotated[
935
- Optional[StrictBool],
936
- Field(description="Whether to include deleted API keys."),
2108
+ filter_by: Annotated[
2109
+ Optional[StrictStr], Field(description="The field to filter by")
2110
+ ] = None,
2111
+ filter_value: Annotated[
2112
+ Optional[StrictStr], Field(description="The value to filter with")
2113
+ ] = None,
2114
+ sort_order: Annotated[
2115
+ Optional[StrictStr], Field(description="The order to sort by")
2116
+ ] = None,
2117
+ sort_by: Annotated[
2118
+ Optional[StrictStr], Field(description="The field to sort by")
937
2119
  ] = None,
938
2120
  _request_timeout: Union[
939
2121
  None,
@@ -949,14 +2131,16 @@ class APIKeysApi:
949
2131
  ) -> RESTResponseType:
950
2132
  """Get Exchange Keys
951
2133
 
952
- Get all exchange keys. If include_deleted is true, all API keys will be returned, including deleted ones.
2134
+ Get all exchange keys. Returns all non-deleted API keys by default.
953
2135
 
954
- :param limit:
955
- :type limit: int
956
- :param offset:
957
- :type offset: int
958
- :param include_deleted: Whether to include deleted API keys.
959
- :type include_deleted: bool
2136
+ :param filter_by: The field to filter by
2137
+ :type filter_by: str
2138
+ :param filter_value: The value to filter with
2139
+ :type filter_value: str
2140
+ :param sort_order: The order to sort by
2141
+ :type sort_order: str
2142
+ :param sort_by: The field to sort by
2143
+ :type sort_by: str
960
2144
  :param _request_timeout: timeout setting for this request. If one
961
2145
  number provided, it will be total request
962
2146
  timeout. It can also be a pair (tuple) of
@@ -980,9 +2164,10 @@ class APIKeysApi:
980
2164
  """ # noqa: E501
981
2165
 
982
2166
  _param = self._get_exchange_keys_serialize(
983
- limit=limit,
984
- offset=offset,
985
- include_deleted=include_deleted,
2167
+ filter_by=filter_by,
2168
+ filter_value=filter_value,
2169
+ sort_order=sort_order,
2170
+ sort_by=sort_by,
986
2171
  _request_auth=_request_auth,
987
2172
  _content_type=_content_type,
988
2173
  _headers=_headers,
@@ -995,13 +2180,135 @@ class APIKeysApi:
995
2180
  response_data = await self.api_client.call_api(
996
2181
  *_param, _request_timeout=_request_timeout
997
2182
  )
998
- return response_data.response
2183
+ return response_data
2184
+
2185
+ # Private sync implementation methods
2186
+ @validate_call
2187
+ def _get_exchange_keys_sync(
2188
+ self,
2189
+ filter_by: Annotated[
2190
+ Optional[StrictStr], Field(description="The field to filter by")
2191
+ ] = None,
2192
+ filter_value: Annotated[
2193
+ Optional[StrictStr], Field(description="The value to filter with")
2194
+ ] = None,
2195
+ sort_order: Annotated[
2196
+ Optional[StrictStr], Field(description="The order to sort by")
2197
+ ] = None,
2198
+ sort_by: Annotated[
2199
+ Optional[StrictStr], Field(description="The field to sort by")
2200
+ ] = None,
2201
+ _request_timeout: Union[
2202
+ None,
2203
+ Annotated[StrictFloat, Field(gt=0)],
2204
+ Tuple[
2205
+ Annotated[StrictFloat, Field(gt=0)], Annotated[StrictFloat, Field(gt=0)]
2206
+ ],
2207
+ ] = None,
2208
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
2209
+ _content_type: Optional[StrictStr] = None,
2210
+ _headers: Optional[Dict[StrictStr, Any]] = None,
2211
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
2212
+ ) -> List[ExchangeKey]:
2213
+ """Synchronous version of get_exchange_keys"""
2214
+ return async_to_sync(self._get_exchange_keys_async)(
2215
+ filter_by=filter_by,
2216
+ filter_value=filter_value,
2217
+ sort_order=sort_order,
2218
+ sort_by=sort_by,
2219
+ _request_timeout=_request_timeout,
2220
+ _request_auth=_request_auth,
2221
+ _content_type=_content_type,
2222
+ _headers=_headers,
2223
+ _host_index=_host_index,
2224
+ )
2225
+
2226
+ @validate_call
2227
+ def _get_exchange_keys_sync_with_http_info(
2228
+ self,
2229
+ filter_by: Annotated[
2230
+ Optional[StrictStr], Field(description="The field to filter by")
2231
+ ] = None,
2232
+ filter_value: Annotated[
2233
+ Optional[StrictStr], Field(description="The value to filter with")
2234
+ ] = None,
2235
+ sort_order: Annotated[
2236
+ Optional[StrictStr], Field(description="The order to sort by")
2237
+ ] = None,
2238
+ sort_by: Annotated[
2239
+ Optional[StrictStr], Field(description="The field to sort by")
2240
+ ] = None,
2241
+ _request_timeout: Union[
2242
+ None,
2243
+ Annotated[StrictFloat, Field(gt=0)],
2244
+ Tuple[
2245
+ Annotated[StrictFloat, Field(gt=0)], Annotated[StrictFloat, Field(gt=0)]
2246
+ ],
2247
+ ] = None,
2248
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
2249
+ _content_type: Optional[StrictStr] = None,
2250
+ _headers: Optional[Dict[StrictStr, Any]] = None,
2251
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
2252
+ ) -> ApiResponse[List[ExchangeKey]]:
2253
+ """Synchronous version of get_exchange_keys_with_http_info"""
2254
+ return async_to_sync(self._get_exchange_keys_async_with_http_info)(
2255
+ filter_by=filter_by,
2256
+ filter_value=filter_value,
2257
+ sort_order=sort_order,
2258
+ sort_by=sort_by,
2259
+ _request_timeout=_request_timeout,
2260
+ _request_auth=_request_auth,
2261
+ _content_type=_content_type,
2262
+ _headers=_headers,
2263
+ _host_index=_host_index,
2264
+ )
2265
+
2266
+ @validate_call
2267
+ def _get_exchange_keys_sync_without_preload_content(
2268
+ self,
2269
+ filter_by: Annotated[
2270
+ Optional[StrictStr], Field(description="The field to filter by")
2271
+ ] = None,
2272
+ filter_value: Annotated[
2273
+ Optional[StrictStr], Field(description="The value to filter with")
2274
+ ] = None,
2275
+ sort_order: Annotated[
2276
+ Optional[StrictStr], Field(description="The order to sort by")
2277
+ ] = None,
2278
+ sort_by: Annotated[
2279
+ Optional[StrictStr], Field(description="The field to sort by")
2280
+ ] = None,
2281
+ _request_timeout: Union[
2282
+ None,
2283
+ Annotated[StrictFloat, Field(gt=0)],
2284
+ Tuple[
2285
+ Annotated[StrictFloat, Field(gt=0)], Annotated[StrictFloat, Field(gt=0)]
2286
+ ],
2287
+ ] = None,
2288
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
2289
+ _content_type: Optional[StrictStr] = None,
2290
+ _headers: Optional[Dict[StrictStr, Any]] = None,
2291
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
2292
+ ) -> RESTResponseType:
2293
+ """Synchronous version of get_exchange_keys_without_preload_content"""
2294
+ return async_to_sync(self._get_exchange_keys_async_without_preload_content)(
2295
+ filter_by=filter_by,
2296
+ filter_value=filter_value,
2297
+ sort_order=sort_order,
2298
+ sort_by=sort_by,
2299
+ _request_timeout=_request_timeout,
2300
+ _request_auth=_request_auth,
2301
+ _content_type=_content_type,
2302
+ _headers=_headers,
2303
+ _host_index=_host_index,
2304
+ )
999
2305
 
1000
2306
  def _get_exchange_keys_serialize(
1001
2307
  self,
1002
- limit,
1003
- offset,
1004
- include_deleted,
2308
+ filter_by,
2309
+ filter_value,
2310
+ sort_order,
2311
+ sort_by,
1005
2312
  _request_auth,
1006
2313
  _content_type,
1007
2314
  _headers,
@@ -1023,17 +2330,21 @@ class APIKeysApi:
1023
2330
 
1024
2331
  # process the path parameters
1025
2332
  # process the query parameters
1026
- if limit is not None:
2333
+ if filter_by is not None:
2334
+
2335
+ _query_params.append(("filter_by", filter_by))
1027
2336
 
1028
- _query_params.append(("limit", limit))
2337
+ if filter_value is not None:
1029
2338
 
1030
- if offset is not None:
2339
+ _query_params.append(("filter_value", filter_value))
1031
2340
 
1032
- _query_params.append(("offset", offset))
2341
+ if sort_order is not None:
1033
2342
 
1034
- if include_deleted is not None:
2343
+ _query_params.append(("sort_order", sort_order))
1035
2344
 
1036
- _query_params.append(("include_deleted", include_deleted))
2345
+ if sort_by is not None:
2346
+
2347
+ _query_params.append(("sort_by", sort_by))
1037
2348
 
1038
2349
  # process the header parameters
1039
2350
  # process the form parameters
@@ -1064,7 +2375,128 @@ class APIKeysApi:
1064
2375
  )
1065
2376
 
1066
2377
  @validate_call
1067
- async def update_exchange_key(
2378
+ def update_exchange_key(
2379
+ self,
2380
+ id: Annotated[StrictStr, Field(description="The ID of the API key to update.")],
2381
+ exchange_key_update: ExchangeKeyUpdate,
2382
+ _request_timeout: Union[
2383
+ None,
2384
+ Annotated[StrictFloat, Field(gt=0)],
2385
+ Tuple[
2386
+ Annotated[StrictFloat, Field(gt=0)], Annotated[StrictFloat, Field(gt=0)]
2387
+ ],
2388
+ ] = None,
2389
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
2390
+ _content_type: Optional[StrictStr] = None,
2391
+ _headers: Optional[Dict[StrictStr, Any]] = None,
2392
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
2393
+ ) -> ExchangeKey:
2394
+ """Put Exchange Key"""
2395
+ if self.is_sync:
2396
+ return self._update_exchange_key_sync(
2397
+ id=id,
2398
+ exchange_key_update=exchange_key_update,
2399
+ _request_timeout=_request_timeout,
2400
+ _request_auth=_request_auth,
2401
+ _content_type=_content_type,
2402
+ _headers=_headers,
2403
+ _host_index=_host_index,
2404
+ )
2405
+
2406
+ else:
2407
+ return self._update_exchange_key_async(
2408
+ id=id,
2409
+ exchange_key_update=exchange_key_update,
2410
+ _request_timeout=_request_timeout,
2411
+ _request_auth=_request_auth,
2412
+ _content_type=_content_type,
2413
+ _headers=_headers,
2414
+ _host_index=_host_index,
2415
+ )
2416
+
2417
+ @validate_call
2418
+ def update_exchange_key_with_http_info(
2419
+ self,
2420
+ id: Annotated[StrictStr, Field(description="The ID of the API key to update.")],
2421
+ exchange_key_update: ExchangeKeyUpdate,
2422
+ _request_timeout: Union[
2423
+ None,
2424
+ Annotated[StrictFloat, Field(gt=0)],
2425
+ Tuple[
2426
+ Annotated[StrictFloat, Field(gt=0)], Annotated[StrictFloat, Field(gt=0)]
2427
+ ],
2428
+ ] = None,
2429
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
2430
+ _content_type: Optional[StrictStr] = None,
2431
+ _headers: Optional[Dict[StrictStr, Any]] = None,
2432
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
2433
+ ) -> ApiResponse[ExchangeKey]:
2434
+ """Put Exchange Key with HTTP info"""
2435
+ if self.is_sync:
2436
+ return self._update_exchange_key_sync_with_http_info(
2437
+ id=id,
2438
+ exchange_key_update=exchange_key_update,
2439
+ _request_timeout=_request_timeout,
2440
+ _request_auth=_request_auth,
2441
+ _content_type=_content_type,
2442
+ _headers=_headers,
2443
+ _host_index=_host_index,
2444
+ )
2445
+
2446
+ else:
2447
+ return self._update_exchange_key_async_with_http_info(
2448
+ id=id,
2449
+ exchange_key_update=exchange_key_update,
2450
+ _request_timeout=_request_timeout,
2451
+ _request_auth=_request_auth,
2452
+ _content_type=_content_type,
2453
+ _headers=_headers,
2454
+ _host_index=_host_index,
2455
+ )
2456
+
2457
+ @validate_call
2458
+ def update_exchange_key_without_preload_content(
2459
+ self,
2460
+ id: Annotated[StrictStr, Field(description="The ID of the API key to update.")],
2461
+ exchange_key_update: ExchangeKeyUpdate,
2462
+ _request_timeout: Union[
2463
+ None,
2464
+ Annotated[StrictFloat, Field(gt=0)],
2465
+ Tuple[
2466
+ Annotated[StrictFloat, Field(gt=0)], Annotated[StrictFloat, Field(gt=0)]
2467
+ ],
2468
+ ] = None,
2469
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
2470
+ _content_type: Optional[StrictStr] = None,
2471
+ _headers: Optional[Dict[StrictStr, Any]] = None,
2472
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
2473
+ ) -> RESTResponseType:
2474
+ """Put Exchange Key without preloading content"""
2475
+ if self.is_sync:
2476
+ return self._update_exchange_key_sync_without_preload_content(
2477
+ id=id,
2478
+ exchange_key_update=exchange_key_update,
2479
+ _request_timeout=_request_timeout,
2480
+ _request_auth=_request_auth,
2481
+ _content_type=_content_type,
2482
+ _headers=_headers,
2483
+ _host_index=_host_index,
2484
+ )
2485
+
2486
+ else:
2487
+ return self._update_exchange_key_async_without_preload_content(
2488
+ id=id,
2489
+ exchange_key_update=exchange_key_update,
2490
+ _request_timeout=_request_timeout,
2491
+ _request_auth=_request_auth,
2492
+ _content_type=_content_type,
2493
+ _headers=_headers,
2494
+ _host_index=_host_index,
2495
+ )
2496
+
2497
+ # Private async implementation methods
2498
+ @validate_call
2499
+ async def _update_exchange_key_async(
1068
2500
  self,
1069
2501
  id: Annotated[StrictStr, Field(description="The ID of the API key to update.")],
1070
2502
  exchange_key_update: ExchangeKeyUpdate,
@@ -1132,7 +2564,7 @@ class APIKeysApi:
1132
2564
  ).data
1133
2565
 
1134
2566
  @validate_call
1135
- async def update_exchange_key_with_http_info(
2567
+ async def _update_exchange_key_async_with_http_info(
1136
2568
  self,
1137
2569
  id: Annotated[StrictStr, Field(description="The ID of the API key to update.")],
1138
2570
  exchange_key_update: ExchangeKeyUpdate,
@@ -1195,12 +2627,11 @@ class APIKeysApi:
1195
2627
  )
1196
2628
  await response_data.read()
1197
2629
  return self.api_client.response_deserialize(
1198
- response_data=response_data,
1199
- response_types_map=_response_types_map,
2630
+ response_data=response_data, response_types_map=_response_types_map
1200
2631
  )
1201
2632
 
1202
2633
  @validate_call
1203
- async def update_exchange_key_without_preload_content(
2634
+ async def _update_exchange_key_async_without_preload_content(
1204
2635
  self,
1205
2636
  id: Annotated[StrictStr, Field(description="The ID of the API key to update.")],
1206
2637
  exchange_key_update: ExchangeKeyUpdate,
@@ -1261,7 +2692,92 @@ class APIKeysApi:
1261
2692
  response_data = await self.api_client.call_api(
1262
2693
  *_param, _request_timeout=_request_timeout
1263
2694
  )
1264
- return response_data.response
2695
+ return response_data
2696
+
2697
+ # Private sync implementation methods
2698
+ @validate_call
2699
+ def _update_exchange_key_sync(
2700
+ self,
2701
+ id: Annotated[StrictStr, Field(description="The ID of the API key to update.")],
2702
+ exchange_key_update: ExchangeKeyUpdate,
2703
+ _request_timeout: Union[
2704
+ None,
2705
+ Annotated[StrictFloat, Field(gt=0)],
2706
+ Tuple[
2707
+ Annotated[StrictFloat, Field(gt=0)], Annotated[StrictFloat, Field(gt=0)]
2708
+ ],
2709
+ ] = None,
2710
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
2711
+ _content_type: Optional[StrictStr] = None,
2712
+ _headers: Optional[Dict[StrictStr, Any]] = None,
2713
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
2714
+ ) -> ExchangeKey:
2715
+ """Synchronous version of update_exchange_key"""
2716
+ return async_to_sync(self._update_exchange_key_async)(
2717
+ id=id,
2718
+ exchange_key_update=exchange_key_update,
2719
+ _request_timeout=_request_timeout,
2720
+ _request_auth=_request_auth,
2721
+ _content_type=_content_type,
2722
+ _headers=_headers,
2723
+ _host_index=_host_index,
2724
+ )
2725
+
2726
+ @validate_call
2727
+ def _update_exchange_key_sync_with_http_info(
2728
+ self,
2729
+ id: Annotated[StrictStr, Field(description="The ID of the API key to update.")],
2730
+ exchange_key_update: ExchangeKeyUpdate,
2731
+ _request_timeout: Union[
2732
+ None,
2733
+ Annotated[StrictFloat, Field(gt=0)],
2734
+ Tuple[
2735
+ Annotated[StrictFloat, Field(gt=0)], Annotated[StrictFloat, Field(gt=0)]
2736
+ ],
2737
+ ] = None,
2738
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
2739
+ _content_type: Optional[StrictStr] = None,
2740
+ _headers: Optional[Dict[StrictStr, Any]] = None,
2741
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
2742
+ ) -> ApiResponse[ExchangeKey]:
2743
+ """Synchronous version of update_exchange_key_with_http_info"""
2744
+ return async_to_sync(self._update_exchange_key_async_with_http_info)(
2745
+ id=id,
2746
+ exchange_key_update=exchange_key_update,
2747
+ _request_timeout=_request_timeout,
2748
+ _request_auth=_request_auth,
2749
+ _content_type=_content_type,
2750
+ _headers=_headers,
2751
+ _host_index=_host_index,
2752
+ )
2753
+
2754
+ @validate_call
2755
+ def _update_exchange_key_sync_without_preload_content(
2756
+ self,
2757
+ id: Annotated[StrictStr, Field(description="The ID of the API key to update.")],
2758
+ exchange_key_update: ExchangeKeyUpdate,
2759
+ _request_timeout: Union[
2760
+ None,
2761
+ Annotated[StrictFloat, Field(gt=0)],
2762
+ Tuple[
2763
+ Annotated[StrictFloat, Field(gt=0)], Annotated[StrictFloat, Field(gt=0)]
2764
+ ],
2765
+ ] = None,
2766
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
2767
+ _content_type: Optional[StrictStr] = None,
2768
+ _headers: Optional[Dict[StrictStr, Any]] = None,
2769
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
2770
+ ) -> RESTResponseType:
2771
+ """Synchronous version of update_exchange_key_without_preload_content"""
2772
+ return async_to_sync(self._update_exchange_key_async_without_preload_content)(
2773
+ id=id,
2774
+ exchange_key_update=exchange_key_update,
2775
+ _request_timeout=_request_timeout,
2776
+ _request_auth=_request_auth,
2777
+ _content_type=_content_type,
2778
+ _headers=_headers,
2779
+ _host_index=_host_index,
2780
+ )
1265
2781
 
1266
2782
  def _update_exchange_key_serialize(
1267
2783
  self,