crypticorn 2.5.0rc5__py3-none-any.whl → 2.5.2__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 (144) hide show
  1. crypticorn/auth/main.py +2 -0
  2. crypticorn/client.py +60 -69
  3. crypticorn/common/__init__.py +3 -1
  4. crypticorn/common/auth.py +38 -20
  5. crypticorn/common/enums.py +4 -31
  6. crypticorn/common/errors.py +72 -17
  7. crypticorn/common/exceptions.py +29 -15
  8. crypticorn/common/mixins.py +37 -0
  9. crypticorn/common/status_router.py +42 -0
  10. crypticorn/common/urls.py +2 -1
  11. crypticorn/common/utils.py +9 -14
  12. crypticorn/hive/main.py +2 -0
  13. crypticorn/klines/client/__init__.py +10 -43
  14. crypticorn/klines/client/api/__init__.py +1 -1
  15. crypticorn/klines/client/api/change_in_timeframe_api.py +16 -31
  16. crypticorn/klines/client/api/funding_rates_api.py +8 -22
  17. crypticorn/klines/client/api/ohlcv_data_api.py +17 -38
  18. crypticorn/klines/client/api/{health_check_api.py → status_api.py} +18 -23
  19. crypticorn/klines/client/api/symbols_api.py +18 -34
  20. crypticorn/klines/client/api/udf_api.py +48 -59
  21. crypticorn/klines/client/api_client.py +1 -1
  22. crypticorn/klines/client/configuration.py +1 -1
  23. crypticorn/klines/client/exceptions.py +1 -1
  24. crypticorn/klines/client/models/__init__.py +9 -42
  25. crypticorn/klines/client/models/{change_in_timeframe_response.py → change_in_timeframe.py} +5 -5
  26. crypticorn/klines/client/models/{error_response.py → exception_detail.py} +25 -20
  27. crypticorn/klines/client/models/{funding_rate_response.py → funding_rate.py} +5 -5
  28. crypticorn/klines/client/models/{ohlcv_response.py → ohlcv_history.py} +14 -14
  29. crypticorn/klines/client/models/resolution.py +1 -1
  30. crypticorn/klines/client/models/{exchange.py → search_symbol.py} +17 -13
  31. crypticorn/klines/client/models/sort_direction.py +1 -1
  32. crypticorn/klines/client/models/{symbol_group_response.py → symbol_group.py} +5 -5
  33. crypticorn/klines/client/models/{symbol_info_response.py → symbol_info.py} +5 -5
  34. crypticorn/klines/client/models/symbol_type.py +1 -1
  35. crypticorn/klines/client/models/timeframe.py +1 -1
  36. crypticorn/klines/client/models/{udf_config_response.py → udf_config.py} +7 -19
  37. crypticorn/klines/client/rest.py +1 -1
  38. crypticorn/klines/main.py +40 -23
  39. crypticorn/metrics/client/__init__.py +3 -22
  40. crypticorn/metrics/client/api/__init__.py +1 -1
  41. crypticorn/metrics/client/api/exchanges_api.py +53 -97
  42. crypticorn/metrics/client/api/indicators_api.py +26 -52
  43. crypticorn/metrics/client/api/logs_api.py +8 -23
  44. crypticorn/metrics/client/api/marketcap_api.py +36 -88
  45. crypticorn/metrics/client/api/markets_api.py +26 -55
  46. crypticorn/metrics/client/api/{health_check_api.py → status_api.py} +18 -23
  47. crypticorn/metrics/client/api/tokens_api.py +7 -21
  48. crypticorn/metrics/client/api_client.py +1 -1
  49. crypticorn/metrics/client/configuration.py +1 -1
  50. crypticorn/metrics/client/exceptions.py +1 -1
  51. crypticorn/metrics/client/models/__init__.py +2 -21
  52. crypticorn/metrics/client/models/{error_response.py → exception_detail.py} +25 -20
  53. crypticorn/metrics/client/models/severity.py +1 -1
  54. crypticorn/metrics/client/models/time_interval.py +1 -1
  55. crypticorn/metrics/client/models/trading_status.py +1 -1
  56. crypticorn/metrics/client/rest.py +1 -1
  57. crypticorn/metrics/main.py +51 -43
  58. crypticorn/pay/main.py +2 -0
  59. crypticorn/trade/client/__init__.py +1 -5
  60. crypticorn/trade/client/api/exchanges_api.py +6 -6
  61. crypticorn/trade/client/api/trading_actions_api.py +16 -15
  62. crypticorn/trade/client/models/__init__.py +1 -5
  63. crypticorn/trade/client/models/action_model.py +1 -2
  64. crypticorn/trade/client/models/bot_model.py +3 -7
  65. crypticorn/trade/client/models/exchange_key_model.py +2 -11
  66. crypticorn/trade/client/models/execution_ids.py +1 -1
  67. crypticorn/trade/client/models/futures_trading_action.py +1 -2
  68. crypticorn/trade/client/models/notification_model.py +3 -12
  69. crypticorn/trade/client/models/order_model.py +7 -21
  70. crypticorn/trade/client/models/spot_trading_action.py +230 -0
  71. crypticorn/trade/client/models/strategy_exchange_info.py +2 -3
  72. crypticorn/trade/client/models/strategy_model_input.py +1 -2
  73. crypticorn/trade/client/models/strategy_model_output.py +1 -2
  74. crypticorn/trade/client/models/tpsl.py +3 -1
  75. crypticorn/trade/main.py +2 -0
  76. {crypticorn-2.5.0rc5.dist-info → crypticorn-2.5.2.dist-info}/METADATA +7 -5
  77. {crypticorn-2.5.0rc5.dist-info → crypticorn-2.5.2.dist-info}/RECORD +81 -141
  78. {crypticorn-2.5.0rc5.dist-info → crypticorn-2.5.2.dist-info}/WHEEL +1 -1
  79. crypticorn/common/sorter.py +0 -40
  80. crypticorn/klines/client/models/base_response_health_check_response.py +0 -114
  81. crypticorn/klines/client/models/base_response_list_change_in_timeframe_response.py +0 -123
  82. crypticorn/klines/client/models/base_response_list_funding_rate_response.py +0 -118
  83. crypticorn/klines/client/models/base_response_list_str.py +0 -106
  84. crypticorn/klines/client/models/base_response_ohlcv_response.py +0 -114
  85. crypticorn/klines/client/models/health_check_response.py +0 -91
  86. crypticorn/klines/client/models/history_error_response.py +0 -89
  87. crypticorn/klines/client/models/history_no_data_response.py +0 -99
  88. crypticorn/klines/client/models/history_success_response.py +0 -99
  89. crypticorn/klines/client/models/http_validation_error.py +0 -99
  90. crypticorn/klines/client/models/market.py +0 -35
  91. crypticorn/klines/client/models/market_type.py +0 -35
  92. crypticorn/klines/client/models/response_get_history_udf_history_get.py +0 -198
  93. crypticorn/klines/client/models/response_get_udf_history.py +0 -198
  94. crypticorn/klines/client/models/search_symbol_response.py +0 -104
  95. crypticorn/klines/client/models/validation_error.py +0 -105
  96. crypticorn/klines/client/models/validation_error_loc_inner.py +0 -159
  97. crypticorn/metrics/client/models/base_response_dict.py +0 -106
  98. crypticorn/metrics/client/models/base_response_health_check_response.py +0 -114
  99. crypticorn/metrics/client/models/base_response_list_dict.py +0 -106
  100. crypticorn/metrics/client/models/base_response_list_exchange_mapping.py +0 -118
  101. crypticorn/metrics/client/models/base_response_list_str.py +0 -106
  102. crypticorn/metrics/client/models/exchange_mapping.py +0 -134
  103. crypticorn/metrics/client/models/health_check_response.py +0 -91
  104. crypticorn/metrics/client/models/http_validation_error.py +0 -99
  105. crypticorn/metrics/client/models/market.py +0 -35
  106. crypticorn/metrics/client/models/market_type.py +0 -35
  107. crypticorn/metrics/client/models/validation_error.py +0 -105
  108. crypticorn/metrics/client/models/validation_error_loc_inner.py +0 -159
  109. crypticorn/pay/client/models/api_status_res.py +0 -83
  110. crypticorn/pay/client/models/body_create_now_invoice.py +0 -98
  111. crypticorn/pay/client/models/body_create_product.py +0 -98
  112. crypticorn/pay/client/models/body_get_products.py +0 -87
  113. crypticorn/pay/client/models/body_handle_now_webhook.py +0 -98
  114. crypticorn/pay/client/models/body_update_product.py +0 -98
  115. crypticorn/pay/client/models/combined_payment_history.py +0 -101
  116. crypticorn/pay/client/models/create_invoice_req.py +0 -188
  117. crypticorn/pay/client/models/create_invoice_res.py +0 -188
  118. crypticorn/pay/client/models/currency.py +0 -165
  119. crypticorn/pay/client/models/estimate_price_req.py +0 -91
  120. crypticorn/pay/client/models/estimate_price_res.py +0 -102
  121. crypticorn/pay/client/models/get_currencies_res.py +0 -99
  122. crypticorn/pay/client/models/get_payment_status_res.py +0 -222
  123. crypticorn/pay/client/models/get_payments_list_res.py +0 -109
  124. crypticorn/pay/client/models/min_amount_req.py +0 -124
  125. crypticorn/pay/client/models/min_amount_res.py +0 -105
  126. crypticorn/pay/client/models/now_fee_structure.py +0 -104
  127. crypticorn/pay/client/models/now_payment_model.py +0 -124
  128. crypticorn/pay/client/models/now_payment_status.py +0 -42
  129. crypticorn/pay/client/models/now_webhook_payload.py +0 -181
  130. crypticorn/pay/client/models/partial_product_update_model.py +0 -150
  131. crypticorn/pay/client/models/product.py +0 -87
  132. crypticorn/pay/client/models/product_model.py +0 -128
  133. crypticorn/pay/client/models/product_subs_model.py +0 -108
  134. crypticorn/pay/client/models/product_update_model.py +0 -150
  135. crypticorn/pay/client/models/unified_payment_model.py +0 -112
  136. crypticorn/trade/client/models/api_error_identifier.py +0 -104
  137. crypticorn/trade/client/models/api_error_level.py +0 -37
  138. crypticorn/trade/client/models/api_error_type.py +0 -37
  139. crypticorn/trade/client/models/api_key_model.py +0 -156
  140. crypticorn/trade/client/models/exchange.py +0 -35
  141. crypticorn/trade/client/models/market_type.py +0 -35
  142. /crypticorn/common/{pydantic.py → decorators.py} +0 -0
  143. {crypticorn-2.5.0rc5.dist-info → crypticorn-2.5.2.dist-info}/entry_points.txt +0 -0
  144. {crypticorn-2.5.0rc5.dist-info → crypticorn-2.5.2.dist-info}/top_level.txt +0 -0
@@ -3,7 +3,7 @@
3
3
  """
4
4
  Marketcap Service API
5
5
 
6
- API for retrieving historical marketcap data, available exchanges, and indicators. ## Features - Historical marketcap data - OHLCV data with marketcap - Technical indicators (KER, SMA) - Exchange and symbol mappings - Error logs
6
+ API for retrieving historical marketcap data, available exchanges, and indicators.
7
7
 
8
8
  The version of the OpenAPI document: 1.0.0
9
9
  Generated by OpenAPI Generator (https://openapi-generator.tech)
@@ -17,13 +17,8 @@ from typing import Any, Dict, List, Optional, Tuple, Union
17
17
  from typing_extensions import Annotated
18
18
 
19
19
  from pydantic import Field, StrictStr
20
- from typing import Optional
20
+ from typing import List, Optional
21
21
  from typing_extensions import Annotated
22
- from crypticorn.metrics.client.models.base_response_list_dict import (
23
- BaseResponseListDict,
24
- )
25
- from crypticorn.metrics.client.models.base_response_list_str import BaseResponseListStr
26
- from crypticorn.metrics.client.models.market_type import MarketType
27
22
  from crypticorn.metrics.client.models.trading_status import TradingStatus
28
23
 
29
24
  from crypticorn.metrics.client.api_client import ApiClient, RequestSerialized
@@ -47,7 +42,7 @@ class MarketsApi:
47
42
  async def get_available_markets_for_symbol(
48
43
  self,
49
44
  market: Annotated[
50
- MarketType, Field(description="Market type (spot or futures)")
45
+ StrictStr, Field(description="Market type (spot or futures)")
51
46
  ],
52
47
  symbol: Annotated[StrictStr, Field(description="Symbol to fetch markets for")],
53
48
  quote_currency: Annotated[
@@ -69,13 +64,13 @@ class MarketsApi:
69
64
  _content_type: Optional[StrictStr] = None,
70
65
  _headers: Optional[Dict[StrictStr, Any]] = None,
71
66
  _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
72
- ) -> BaseResponseListDict:
67
+ ) -> List[str]:
73
68
  """Get Markets For Symbol
74
69
 
75
70
  Get markets for a symbol with filtering options.
76
71
 
77
72
  :param market: Market type (spot or futures) (required)
78
- :type market: MarketType
73
+ :type market: str
79
74
  :param symbol: Symbol to fetch markets for (required)
80
75
  :type symbol: str
81
76
  :param quote_currency: Quote currency for which to fetch markets
@@ -116,11 +111,7 @@ class MarketsApi:
116
111
  )
117
112
 
118
113
  _response_types_map: Dict[str, Optional[str]] = {
119
- "200": "BaseResponseListDict",
120
- "400": "ErrorResponse",
121
- "404": "ErrorResponse",
122
- "500": "ErrorResponse",
123
- "422": "HTTPValidationError",
114
+ "200": "List[str]",
124
115
  }
125
116
  response_data = await self.api_client.call_api(
126
117
  *_param, _request_timeout=_request_timeout
@@ -135,7 +126,7 @@ class MarketsApi:
135
126
  async def get_available_markets_for_symbol_with_http_info(
136
127
  self,
137
128
  market: Annotated[
138
- MarketType, Field(description="Market type (spot or futures)")
129
+ StrictStr, Field(description="Market type (spot or futures)")
139
130
  ],
140
131
  symbol: Annotated[StrictStr, Field(description="Symbol to fetch markets for")],
141
132
  quote_currency: Annotated[
@@ -157,13 +148,13 @@ class MarketsApi:
157
148
  _content_type: Optional[StrictStr] = None,
158
149
  _headers: Optional[Dict[StrictStr, Any]] = None,
159
150
  _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
160
- ) -> ApiResponse[BaseResponseListDict]:
151
+ ) -> ApiResponse[List[str]]:
161
152
  """Get Markets For Symbol
162
153
 
163
154
  Get markets for a symbol with filtering options.
164
155
 
165
156
  :param market: Market type (spot or futures) (required)
166
- :type market: MarketType
157
+ :type market: str
167
158
  :param symbol: Symbol to fetch markets for (required)
168
159
  :type symbol: str
169
160
  :param quote_currency: Quote currency for which to fetch markets
@@ -204,11 +195,7 @@ class MarketsApi:
204
195
  )
205
196
 
206
197
  _response_types_map: Dict[str, Optional[str]] = {
207
- "200": "BaseResponseListDict",
208
- "400": "ErrorResponse",
209
- "404": "ErrorResponse",
210
- "500": "ErrorResponse",
211
- "422": "HTTPValidationError",
198
+ "200": "List[str]",
212
199
  }
213
200
  response_data = await self.api_client.call_api(
214
201
  *_param, _request_timeout=_request_timeout
@@ -223,7 +210,7 @@ class MarketsApi:
223
210
  async def get_available_markets_for_symbol_without_preload_content(
224
211
  self,
225
212
  market: Annotated[
226
- MarketType, Field(description="Market type (spot or futures)")
213
+ StrictStr, Field(description="Market type (spot or futures)")
227
214
  ],
228
215
  symbol: Annotated[StrictStr, Field(description="Symbol to fetch markets for")],
229
216
  quote_currency: Annotated[
@@ -251,7 +238,7 @@ class MarketsApi:
251
238
  Get markets for a symbol with filtering options.
252
239
 
253
240
  :param market: Market type (spot or futures) (required)
254
- :type market: MarketType
241
+ :type market: str
255
242
  :param symbol: Symbol to fetch markets for (required)
256
243
  :type symbol: str
257
244
  :param quote_currency: Quote currency for which to fetch markets
@@ -292,11 +279,7 @@ class MarketsApi:
292
279
  )
293
280
 
294
281
  _response_types_map: Dict[str, Optional[str]] = {
295
- "200": "BaseResponseListDict",
296
- "400": "ErrorResponse",
297
- "404": "ErrorResponse",
298
- "500": "ErrorResponse",
299
- "422": "HTTPValidationError",
282
+ "200": "List[str]",
300
283
  }
301
284
  response_data = await self.api_client.call_api(
302
285
  *_param, _request_timeout=_request_timeout
@@ -330,7 +313,7 @@ class MarketsApi:
330
313
 
331
314
  # process the path parameters
332
315
  if market is not None:
333
- _path_params["market"] = market.value
316
+ _path_params["market"] = market
334
317
  if symbol is not None:
335
318
  _path_params["symbol"] = symbol
336
319
  # process the query parameters
@@ -374,7 +357,7 @@ class MarketsApi:
374
357
  async def get_quote_currencies(
375
358
  self,
376
359
  market: Annotated[
377
- MarketType, Field(description="Market type (spot or futures)")
360
+ StrictStr, Field(description="Market type (spot or futures)")
378
361
  ],
379
362
  _request_timeout: Union[
380
363
  None,
@@ -387,13 +370,13 @@ class MarketsApi:
387
370
  _content_type: Optional[StrictStr] = None,
388
371
  _headers: Optional[Dict[StrictStr, Any]] = None,
389
372
  _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
390
- ) -> BaseResponseListStr:
373
+ ) -> List[str]:
391
374
  """Get Quote Currencies
392
375
 
393
376
  Get available quote currencies for a market.
394
377
 
395
378
  :param market: Market type (spot or futures) (required)
396
- :type market: MarketType
379
+ :type market: str
397
380
  :param _request_timeout: timeout setting for this request. If one
398
381
  number provided, it will be total request
399
382
  timeout. It can also be a pair (tuple) of
@@ -425,11 +408,7 @@ class MarketsApi:
425
408
  )
426
409
 
427
410
  _response_types_map: Dict[str, Optional[str]] = {
428
- "200": "BaseResponseListStr",
429
- "400": "ErrorResponse",
430
- "404": "ErrorResponse",
431
- "500": "ErrorResponse",
432
- "422": "HTTPValidationError",
411
+ "200": "List[str]",
433
412
  }
434
413
  response_data = await self.api_client.call_api(
435
414
  *_param, _request_timeout=_request_timeout
@@ -444,7 +423,7 @@ class MarketsApi:
444
423
  async def get_quote_currencies_with_http_info(
445
424
  self,
446
425
  market: Annotated[
447
- MarketType, Field(description="Market type (spot or futures)")
426
+ StrictStr, Field(description="Market type (spot or futures)")
448
427
  ],
449
428
  _request_timeout: Union[
450
429
  None,
@@ -457,13 +436,13 @@ class MarketsApi:
457
436
  _content_type: Optional[StrictStr] = None,
458
437
  _headers: Optional[Dict[StrictStr, Any]] = None,
459
438
  _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
460
- ) -> ApiResponse[BaseResponseListStr]:
439
+ ) -> ApiResponse[List[str]]:
461
440
  """Get Quote Currencies
462
441
 
463
442
  Get available quote currencies for a market.
464
443
 
465
444
  :param market: Market type (spot or futures) (required)
466
- :type market: MarketType
445
+ :type market: str
467
446
  :param _request_timeout: timeout setting for this request. If one
468
447
  number provided, it will be total request
469
448
  timeout. It can also be a pair (tuple) of
@@ -495,11 +474,7 @@ class MarketsApi:
495
474
  )
496
475
 
497
476
  _response_types_map: Dict[str, Optional[str]] = {
498
- "200": "BaseResponseListStr",
499
- "400": "ErrorResponse",
500
- "404": "ErrorResponse",
501
- "500": "ErrorResponse",
502
- "422": "HTTPValidationError",
477
+ "200": "List[str]",
503
478
  }
504
479
  response_data = await self.api_client.call_api(
505
480
  *_param, _request_timeout=_request_timeout
@@ -514,7 +489,7 @@ class MarketsApi:
514
489
  async def get_quote_currencies_without_preload_content(
515
490
  self,
516
491
  market: Annotated[
517
- MarketType, Field(description="Market type (spot or futures)")
492
+ StrictStr, Field(description="Market type (spot or futures)")
518
493
  ],
519
494
  _request_timeout: Union[
520
495
  None,
@@ -533,7 +508,7 @@ class MarketsApi:
533
508
  Get available quote currencies for a market.
534
509
 
535
510
  :param market: Market type (spot or futures) (required)
536
- :type market: MarketType
511
+ :type market: str
537
512
  :param _request_timeout: timeout setting for this request. If one
538
513
  number provided, it will be total request
539
514
  timeout. It can also be a pair (tuple) of
@@ -565,11 +540,7 @@ class MarketsApi:
565
540
  )
566
541
 
567
542
  _response_types_map: Dict[str, Optional[str]] = {
568
- "200": "BaseResponseListStr",
569
- "400": "ErrorResponse",
570
- "404": "ErrorResponse",
571
- "500": "ErrorResponse",
572
- "422": "HTTPValidationError",
543
+ "200": "List[str]",
573
544
  }
574
545
  response_data = await self.api_client.call_api(
575
546
  *_param, _request_timeout=_request_timeout
@@ -600,7 +571,7 @@ class MarketsApi:
600
571
 
601
572
  # process the path parameters
602
573
  if market is not None:
603
- _path_params["market"] = market.value
574
+ _path_params["market"] = market
604
575
  # process the query parameters
605
576
  # process the header parameters
606
577
  # process the form parameters
@@ -3,7 +3,7 @@
3
3
  """
4
4
  Marketcap Service API
5
5
 
6
- API for retrieving historical marketcap data, available exchanges, and indicators. ## Features - Historical marketcap data - OHLCV data with marketcap - Technical indicators (KER, SMA) - Exchange and symbol mappings - Error logs
6
+ API for retrieving historical marketcap data, available exchanges, and indicators.
7
7
 
8
8
  The version of the OpenAPI document: 1.0.0
9
9
  Generated by OpenAPI Generator (https://openapi-generator.tech)
@@ -16,16 +16,14 @@ 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 crypticorn.metrics.client.models.base_response_health_check_response import (
20
- BaseResponseHealthCheckResponse,
21
- )
19
+ from pydantic import StrictStr
22
20
 
23
21
  from crypticorn.metrics.client.api_client import ApiClient, RequestSerialized
24
22
  from crypticorn.metrics.client.api_response import ApiResponse
25
23
  from crypticorn.metrics.client.rest import RESTResponseType
26
24
 
27
25
 
28
- class HealthCheckApi:
26
+ class StatusApi:
29
27
  """NOTE: This class is auto generated by OpenAPI Generator
30
28
  Ref: https://openapi-generator.tech
31
29
 
@@ -38,7 +36,7 @@ class HealthCheckApi:
38
36
  self.api_client = api_client
39
37
 
40
38
  @validate_call
41
- async def health_check(
39
+ async def ping(
42
40
  self,
43
41
  _request_timeout: Union[
44
42
  None,
@@ -51,10 +49,9 @@ class HealthCheckApi:
51
49
  _content_type: Optional[StrictStr] = None,
52
50
  _headers: Optional[Dict[StrictStr, Any]] = None,
53
51
  _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
54
- ) -> BaseResponseHealthCheckResponse:
55
- """Read Root
52
+ ) -> str:
53
+ """Ping
56
54
 
57
- Health check endpoint to verify if the API is running.
58
55
 
59
56
  :param _request_timeout: timeout setting for this request. If one
60
57
  number provided, it will be total request
@@ -78,7 +75,7 @@ class HealthCheckApi:
78
75
  :return: Returns the result object.
79
76
  """ # noqa: E501
80
77
 
81
- _param = self._health_check_serialize(
78
+ _param = self._ping_serialize(
82
79
  _request_auth=_request_auth,
83
80
  _content_type=_content_type,
84
81
  _headers=_headers,
@@ -86,7 +83,7 @@ class HealthCheckApi:
86
83
  )
87
84
 
88
85
  _response_types_map: Dict[str, Optional[str]] = {
89
- "200": "BaseResponseHealthCheckResponse",
86
+ "200": "str",
90
87
  }
91
88
  response_data = await self.api_client.call_api(
92
89
  *_param, _request_timeout=_request_timeout
@@ -98,7 +95,7 @@ class HealthCheckApi:
98
95
  ).data
99
96
 
100
97
  @validate_call
101
- async def health_check_with_http_info(
98
+ async def ping_with_http_info(
102
99
  self,
103
100
  _request_timeout: Union[
104
101
  None,
@@ -111,10 +108,9 @@ class HealthCheckApi:
111
108
  _content_type: Optional[StrictStr] = None,
112
109
  _headers: Optional[Dict[StrictStr, Any]] = None,
113
110
  _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
114
- ) -> ApiResponse[BaseResponseHealthCheckResponse]:
115
- """Read Root
111
+ ) -> ApiResponse[str]:
112
+ """Ping
116
113
 
117
- Health check endpoint to verify if the API is running.
118
114
 
119
115
  :param _request_timeout: timeout setting for this request. If one
120
116
  number provided, it will be total request
@@ -138,7 +134,7 @@ class HealthCheckApi:
138
134
  :return: Returns the result object.
139
135
  """ # noqa: E501
140
136
 
141
- _param = self._health_check_serialize(
137
+ _param = self._ping_serialize(
142
138
  _request_auth=_request_auth,
143
139
  _content_type=_content_type,
144
140
  _headers=_headers,
@@ -146,7 +142,7 @@ class HealthCheckApi:
146
142
  )
147
143
 
148
144
  _response_types_map: Dict[str, Optional[str]] = {
149
- "200": "BaseResponseHealthCheckResponse",
145
+ "200": "str",
150
146
  }
151
147
  response_data = await self.api_client.call_api(
152
148
  *_param, _request_timeout=_request_timeout
@@ -158,7 +154,7 @@ class HealthCheckApi:
158
154
  )
159
155
 
160
156
  @validate_call
161
- async def health_check_without_preload_content(
157
+ async def ping_without_preload_content(
162
158
  self,
163
159
  _request_timeout: Union[
164
160
  None,
@@ -172,9 +168,8 @@ class HealthCheckApi:
172
168
  _headers: Optional[Dict[StrictStr, Any]] = None,
173
169
  _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
174
170
  ) -> RESTResponseType:
175
- """Read Root
171
+ """Ping
176
172
 
177
- Health check endpoint to verify if the API is running.
178
173
 
179
174
  :param _request_timeout: timeout setting for this request. If one
180
175
  number provided, it will be total request
@@ -198,7 +193,7 @@ class HealthCheckApi:
198
193
  :return: Returns the result object.
199
194
  """ # noqa: E501
200
195
 
201
- _param = self._health_check_serialize(
196
+ _param = self._ping_serialize(
202
197
  _request_auth=_request_auth,
203
198
  _content_type=_content_type,
204
199
  _headers=_headers,
@@ -206,14 +201,14 @@ class HealthCheckApi:
206
201
  )
207
202
 
208
203
  _response_types_map: Dict[str, Optional[str]] = {
209
- "200": "BaseResponseHealthCheckResponse",
204
+ "200": "str",
210
205
  }
211
206
  response_data = await self.api_client.call_api(
212
207
  *_param, _request_timeout=_request_timeout
213
208
  )
214
209
  return response_data.response
215
210
 
216
- def _health_check_serialize(
211
+ def _ping_serialize(
217
212
  self,
218
213
  _request_auth,
219
214
  _content_type,
@@ -3,7 +3,7 @@
3
3
  """
4
4
  Marketcap Service API
5
5
 
6
- API for retrieving historical marketcap data, available exchanges, and indicators. ## Features - Historical marketcap data - OHLCV data with marketcap - Technical indicators (KER, SMA) - Exchange and symbol mappings - Error logs
6
+ API for retrieving historical marketcap data, available exchanges, and indicators.
7
7
 
8
8
  The version of the OpenAPI document: 1.0.0
9
9
  Generated by OpenAPI Generator (https://openapi-generator.tech)
@@ -17,10 +17,8 @@ from typing import Any, Dict, List, Optional, Tuple, Union
17
17
  from typing_extensions import Annotated
18
18
 
19
19
  from pydantic import Field, StrictStr, field_validator
20
+ from typing import Any, Dict, List
20
21
  from typing_extensions import Annotated
21
- from crypticorn.metrics.client.models.base_response_list_dict import (
22
- BaseResponseListDict,
23
- )
24
22
 
25
23
  from crypticorn.metrics.client.api_client import ApiClient, RequestSerialized
26
24
  from crypticorn.metrics.client.api_response import ApiResponse
@@ -56,7 +54,7 @@ class TokensApi:
56
54
  _content_type: Optional[StrictStr] = None,
57
55
  _headers: Optional[Dict[StrictStr, Any]] = None,
58
56
  _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
59
- ) -> BaseResponseListDict:
57
+ ) -> List[Dict[str, object]]:
60
58
  """Get Stable Wrapped Tokens
61
59
 
62
60
  Get list of stable or wrapped tokens.
@@ -94,11 +92,7 @@ class TokensApi:
94
92
  )
95
93
 
96
94
  _response_types_map: Dict[str, Optional[str]] = {
97
- "200": "BaseResponseListDict",
98
- "400": "ErrorResponse",
99
- "404": "ErrorResponse",
100
- "500": "ErrorResponse",
101
- "422": "HTTPValidationError",
95
+ "200": "List[Dict[str, object]]",
102
96
  }
103
97
  response_data = await self.api_client.call_api(
104
98
  *_param, _request_timeout=_request_timeout
@@ -126,7 +120,7 @@ class TokensApi:
126
120
  _content_type: Optional[StrictStr] = None,
127
121
  _headers: Optional[Dict[StrictStr, Any]] = None,
128
122
  _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
129
- ) -> ApiResponse[BaseResponseListDict]:
123
+ ) -> ApiResponse[List[Dict[str, object]]]:
130
124
  """Get Stable Wrapped Tokens
131
125
 
132
126
  Get list of stable or wrapped tokens.
@@ -164,11 +158,7 @@ class TokensApi:
164
158
  )
165
159
 
166
160
  _response_types_map: Dict[str, Optional[str]] = {
167
- "200": "BaseResponseListDict",
168
- "400": "ErrorResponse",
169
- "404": "ErrorResponse",
170
- "500": "ErrorResponse",
171
- "422": "HTTPValidationError",
161
+ "200": "List[Dict[str, object]]",
172
162
  }
173
163
  response_data = await self.api_client.call_api(
174
164
  *_param, _request_timeout=_request_timeout
@@ -234,11 +224,7 @@ class TokensApi:
234
224
  )
235
225
 
236
226
  _response_types_map: Dict[str, Optional[str]] = {
237
- "200": "BaseResponseListDict",
238
- "400": "ErrorResponse",
239
- "404": "ErrorResponse",
240
- "500": "ErrorResponse",
241
- "422": "HTTPValidationError",
227
+ "200": "List[Dict[str, object]]",
242
228
  }
243
229
  response_data = await self.api_client.call_api(
244
230
  *_param, _request_timeout=_request_timeout
@@ -3,7 +3,7 @@
3
3
  """
4
4
  Marketcap Service API
5
5
 
6
- API for retrieving historical marketcap data, available exchanges, and indicators. ## Features - Historical marketcap data - OHLCV data with marketcap - Technical indicators (KER, SMA) - Exchange and symbol mappings - Error logs
6
+ API for retrieving historical marketcap data, available exchanges, and indicators.
7
7
 
8
8
  The version of the OpenAPI document: 1.0.0
9
9
  Generated by OpenAPI Generator (https://openapi-generator.tech)
@@ -3,7 +3,7 @@
3
3
  """
4
4
  Marketcap Service API
5
5
 
6
- API for retrieving historical marketcap data, available exchanges, and indicators. ## Features - Historical marketcap data - OHLCV data with marketcap - Technical indicators (KER, SMA) - Exchange and symbol mappings - Error logs
6
+ API for retrieving historical marketcap data, available exchanges, and indicators.
7
7
 
8
8
  The version of the OpenAPI document: 1.0.0
9
9
  Generated by OpenAPI Generator (https://openapi-generator.tech)
@@ -3,7 +3,7 @@
3
3
  """
4
4
  Marketcap Service API
5
5
 
6
- API for retrieving historical marketcap data, available exchanges, and indicators. ## Features - Historical marketcap data - OHLCV data with marketcap - Technical indicators (KER, SMA) - Exchange and symbol mappings - Error logs
6
+ API for retrieving historical marketcap data, available exchanges, and indicators.
7
7
 
8
8
  The version of the OpenAPI document: 1.0.0
9
9
  Generated by OpenAPI Generator (https://openapi-generator.tech)
@@ -4,7 +4,7 @@
4
4
  """
5
5
  Marketcap Service API
6
6
 
7
- API for retrieving historical marketcap data, available exchanges, and indicators. ## Features - Historical marketcap data - OHLCV data with marketcap - Technical indicators (KER, SMA) - Exchange and symbol mappings - Error logs
7
+ API for retrieving historical marketcap data, available exchanges, and indicators.
8
8
 
9
9
  The version of the OpenAPI document: 1.0.0
10
10
  Generated by OpenAPI Generator (https://openapi-generator.tech)
@@ -14,26 +14,7 @@ Do not edit the class manually.
14
14
 
15
15
 
16
16
  # import models into model package
17
- from crypticorn.metrics.client.models.base_response_dict import BaseResponseDict
18
- from crypticorn.metrics.client.models.base_response_health_check_response import (
19
- BaseResponseHealthCheckResponse,
20
- )
21
- from crypticorn.metrics.client.models.base_response_list_dict import (
22
- BaseResponseListDict,
23
- )
24
- from crypticorn.metrics.client.models.base_response_list_exchange_mapping import (
25
- BaseResponseListExchangeMapping,
26
- )
27
- from crypticorn.metrics.client.models.base_response_list_str import BaseResponseListStr
28
- from crypticorn.metrics.client.models.error_response import ErrorResponse
29
- from crypticorn.metrics.client.models.exchange_mapping import ExchangeMapping
30
- from crypticorn.metrics.client.models.http_validation_error import HTTPValidationError
31
- from crypticorn.metrics.client.models.health_check_response import HealthCheckResponse
32
- from crypticorn.metrics.client.models.market_type import MarketType
17
+ from crypticorn.metrics.client.models.exception_detail import ExceptionDetail
33
18
  from crypticorn.metrics.client.models.severity import Severity
34
19
  from crypticorn.metrics.client.models.time_interval import TimeInterval
35
20
  from crypticorn.metrics.client.models.trading_status import TradingStatus
36
- from crypticorn.metrics.client.models.validation_error import ValidationError
37
- from crypticorn.metrics.client.models.validation_error_loc_inner import (
38
- ValidationErrorLocInner,
39
- )
@@ -3,7 +3,7 @@
3
3
  """
4
4
  Marketcap Service API
5
5
 
6
- API for retrieving historical marketcap data, available exchanges, and indicators. ## Features - Historical marketcap data - OHLCV data with marketcap - Technical indicators (KER, SMA) - Exchange and symbol mappings - Error logs
6
+ API for retrieving historical marketcap data, available exchanges, and indicators.
7
7
 
8
8
  The version of the OpenAPI document: 1.0.0
9
9
  Generated by OpenAPI Generator (https://openapi-generator.tech)
@@ -17,29 +17,30 @@ import pprint
17
17
  import re # noqa: F401
18
18
  import json
19
19
 
20
- from datetime import datetime
21
- from pydantic import BaseModel, ConfigDict, StrictBool, StrictStr
20
+ from pydantic import BaseModel, ConfigDict, Field, StrictInt, StrictStr
22
21
  from typing import Any, ClassVar, Dict, List, Optional
23
22
  from typing import Optional, Set
24
23
  from typing_extensions import Self
25
24
 
26
25
 
27
- class ErrorResponse(BaseModel):
26
+ class ExceptionDetail(BaseModel):
28
27
  """
29
- ErrorResponse
28
+ This is the detail of the exception. It is used to enrich the exception with additional information by unwrapping the ApiError into its components.
30
29
  """ # noqa: E501
31
30
 
32
- success: Optional[StrictBool] = False
33
- message: StrictStr
34
- error_code: StrictStr
35
- details: Optional[Dict[str, Any]] = None
36
- timestamp: Optional[datetime] = None
31
+ message: Optional[StrictStr] = None
32
+ code: StrictStr = Field(description="API error identifiers")
33
+ type: StrictStr = Field(description="Type of API error")
34
+ level: StrictStr = Field(description="API error levels")
35
+ status_code: StrictInt = Field(description="The HTTP status code")
36
+ details: Optional[Any] = None
37
37
  __properties: ClassVar[List[str]] = [
38
- "success",
39
38
  "message",
40
- "error_code",
39
+ "code",
40
+ "type",
41
+ "level",
42
+ "status_code",
41
43
  "details",
42
- "timestamp",
43
44
  ]
44
45
 
45
46
  model_config = ConfigDict(
@@ -59,7 +60,7 @@ class ErrorResponse(BaseModel):
59
60
 
60
61
  @classmethod
61
62
  def from_json(cls, json_str: str) -> Optional[Self]:
62
- """Create an instance of ErrorResponse from a JSON string"""
63
+ """Create an instance of ExceptionDetail from a JSON string"""
63
64
  return cls.from_dict(json.loads(json_str))
64
65
 
65
66
  def to_dict(self) -> Dict[str, Any]:
@@ -79,6 +80,11 @@ class ErrorResponse(BaseModel):
79
80
  exclude=excluded_fields,
80
81
  exclude_none=True,
81
82
  )
83
+ # set to None if message (nullable) is None
84
+ # and model_fields_set contains the field
85
+ if self.message is None and "message" in self.model_fields_set:
86
+ _dict["message"] = None
87
+
82
88
  # set to None if details (nullable) is None
83
89
  # and model_fields_set contains the field
84
90
  if self.details is None and "details" in self.model_fields_set:
@@ -88,7 +94,7 @@ class ErrorResponse(BaseModel):
88
94
 
89
95
  @classmethod
90
96
  def from_dict(cls, obj: Optional[Dict[str, Any]]) -> Optional[Self]:
91
- """Create an instance of ErrorResponse from a dict"""
97
+ """Create an instance of ExceptionDetail from a dict"""
92
98
  if obj is None:
93
99
  return None
94
100
 
@@ -97,13 +103,12 @@ class ErrorResponse(BaseModel):
97
103
 
98
104
  _obj = cls.model_validate(
99
105
  {
100
- "success": (
101
- obj.get("success") if obj.get("success") is not None else False
102
- ),
103
106
  "message": obj.get("message"),
104
- "error_code": obj.get("error_code"),
107
+ "code": obj.get("code"),
108
+ "type": obj.get("type"),
109
+ "level": obj.get("level"),
110
+ "status_code": obj.get("status_code"),
105
111
  "details": obj.get("details"),
106
- "timestamp": obj.get("timestamp"),
107
112
  }
108
113
  )
109
114
  return _obj
@@ -3,7 +3,7 @@
3
3
  """
4
4
  Marketcap Service API
5
5
 
6
- API for retrieving historical marketcap data, available exchanges, and indicators. ## Features - Historical marketcap data - OHLCV data with marketcap - Technical indicators (KER, SMA) - Exchange and symbol mappings - Error logs
6
+ API for retrieving historical marketcap data, available exchanges, and indicators.
7
7
 
8
8
  The version of the OpenAPI document: 1.0.0
9
9
  Generated by OpenAPI Generator (https://openapi-generator.tech)
@@ -3,7 +3,7 @@
3
3
  """
4
4
  Marketcap Service API
5
5
 
6
- API for retrieving historical marketcap data, available exchanges, and indicators. ## Features - Historical marketcap data - OHLCV data with marketcap - Technical indicators (KER, SMA) - Exchange and symbol mappings - Error logs
6
+ API for retrieving historical marketcap data, available exchanges, and indicators.
7
7
 
8
8
  The version of the OpenAPI document: 1.0.0
9
9
  Generated by OpenAPI Generator (https://openapi-generator.tech)
@@ -3,7 +3,7 @@
3
3
  """
4
4
  Marketcap Service API
5
5
 
6
- API for retrieving historical marketcap data, available exchanges, and indicators. ## Features - Historical marketcap data - OHLCV data with marketcap - Technical indicators (KER, SMA) - Exchange and symbol mappings - Error logs
6
+ API for retrieving historical marketcap data, available exchanges, and indicators.
7
7
 
8
8
  The version of the OpenAPI document: 1.0.0
9
9
  Generated by OpenAPI Generator (https://openapi-generator.tech)