crypticorn 2.11.9__py3-none-any.whl → 2.12.1__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 (38) hide show
  1. crypticorn/common/errors.py +48 -8
  2. crypticorn/common/exceptions.py +11 -0
  3. crypticorn/hive/client/__init__.py +1 -0
  4. crypticorn/hive/client/models/__init__.py +1 -0
  5. crypticorn/hive/client/models/api_error_identifier.py +2 -0
  6. crypticorn/hive/client/models/coin_info.py +106 -0
  7. crypticorn/hive/client/models/data_info.py +17 -6
  8. crypticorn/hive/client/models/target_info.py +20 -6
  9. crypticorn/pay/client/__init__.py +5 -3
  10. crypticorn/pay/client/api/admin_api.py +35 -33
  11. crypticorn/pay/client/api/now_payments_api.py +476 -5
  12. crypticorn/pay/client/api/payments_api.py +43 -264
  13. crypticorn/pay/client/api/products_api.py +16 -16
  14. crypticorn/pay/client/models/__init__.py +5 -3
  15. crypticorn/pay/client/models/api_error_identifier.py +117 -0
  16. crypticorn/pay/client/models/api_error_level.py +37 -0
  17. crypticorn/pay/client/models/api_error_type.py +37 -0
  18. crypticorn/pay/client/models/exception_detail.py +7 -4
  19. crypticorn/pay/client/models/{product_read.py → product.py} +4 -4
  20. crypticorn/pay/client/models/product_create.py +1 -1
  21. crypticorn/pay/client/models/scope.py +1 -0
  22. crypticorn/pay/client/models/{product_sub_read.py → subscription.py} +5 -5
  23. crypticorn/trade/client/api/api_keys_api.py +61 -19
  24. crypticorn/trade/client/api/orders_api.py +3 -0
  25. crypticorn/trade/client/models/api_error_identifier.py +1 -1
  26. crypticorn/trade/client/models/bot.py +5 -5
  27. crypticorn/trade/client/models/exchange_key.py +13 -6
  28. crypticorn/trade/client/models/futures_trading_action.py +5 -5
  29. crypticorn/trade/client/models/notification.py +5 -5
  30. crypticorn/trade/client/models/order.py +5 -5
  31. crypticorn/trade/client/models/strategy.py +5 -5
  32. {crypticorn-2.11.9.dist-info → crypticorn-2.12.1.dist-info}/METADATA +1 -1
  33. {crypticorn-2.11.9.dist-info → crypticorn-2.12.1.dist-info}/RECORD +37 -34
  34. {crypticorn-2.11.9.dist-info → crypticorn-2.12.1.dist-info}/WHEEL +1 -1
  35. crypticorn/pay/client/models/response_getuptime.py +0 -159
  36. {crypticorn-2.11.9.dist-info → crypticorn-2.12.1.dist-info}/entry_points.txt +0 -0
  37. {crypticorn-2.11.9.dist-info → crypticorn-2.12.1.dist-info}/licenses/LICENSE +0 -0
  38. {crypticorn-2.11.9.dist-info → crypticorn-2.12.1.dist-info}/top_level.txt +0 -0
@@ -32,15 +32,15 @@ class Bot(BaseModel):
32
32
  """ # noqa: E501
33
33
 
34
34
  user_id: StrictStr = Field(description="UID for the user")
35
- id: Optional[StrictStr] = Field(
36
- default=None, description="Unique identifier for the resource"
37
- )
38
35
  created_at: Optional[StrictInt] = Field(
39
36
  default=None, description="Timestamp of creation"
40
37
  )
41
38
  updated_at: Optional[StrictInt] = Field(
42
39
  default=None, description="Timestamp of last update"
43
40
  )
41
+ id: Optional[StrictStr] = Field(
42
+ default=None, description="Unique identifier for the resource"
43
+ )
44
44
  name: StrictStr = Field(description="Name of the bot")
45
45
  allocation: StrictInt = Field(description="Initial allocation for the bot")
46
46
  status: BotStatus = Field(description="Status of the bot")
@@ -69,9 +69,9 @@ class Bot(BaseModel):
69
69
  )
70
70
  __properties: ClassVar[List[str]] = [
71
71
  "user_id",
72
- "id",
73
72
  "created_at",
74
73
  "updated_at",
74
+ "id",
75
75
  "name",
76
76
  "allocation",
77
77
  "status",
@@ -138,9 +138,9 @@ class Bot(BaseModel):
138
138
  _obj = cls.model_validate(
139
139
  {
140
140
  "user_id": obj.get("user_id"),
141
- "id": obj.get("id"),
142
141
  "created_at": obj.get("created_at"),
143
142
  "updated_at": obj.get("updated_at"),
143
+ "id": obj.get("id"),
144
144
  "name": obj.get("name"),
145
145
  "allocation": obj.get("allocation"),
146
146
  "status": obj.get("status"),
@@ -17,7 +17,7 @@ import pprint
17
17
  import re # noqa: F401
18
18
  import json
19
19
 
20
- from pydantic import BaseModel, ConfigDict, Field, StrictInt, StrictStr
20
+ from pydantic import BaseModel, ConfigDict, Field, StrictBool, StrictInt, StrictStr
21
21
  from typing import Any, ClassVar, Dict, List, Optional
22
22
  from crypticorn.trade.client.models.exchange import Exchange
23
23
  from typing import Optional, Set
@@ -30,23 +30,27 @@ class ExchangeKey(BaseModel):
30
30
  """ # noqa: E501
31
31
 
32
32
  user_id: StrictStr = Field(description="UID for the user")
33
- id: Optional[StrictStr] = Field(
34
- default=None, description="Unique identifier for the resource"
35
- )
36
33
  created_at: Optional[StrictInt] = Field(
37
34
  default=None, description="Timestamp of creation"
38
35
  )
39
36
  updated_at: Optional[StrictInt] = Field(
40
37
  default=None, description="Timestamp of last update"
41
38
  )
39
+ id: Optional[StrictStr] = Field(
40
+ default=None, description="Unique identifier for the resource"
41
+ )
42
42
  label: StrictStr = Field(description="Label for the API key")
43
+ deleted: Optional[StrictBool] = Field(
44
+ default=False, description="Whether the API key has been deleted."
45
+ )
43
46
  exchange: Exchange = Field(description="The exchange the API key is for.")
44
47
  __properties: ClassVar[List[str]] = [
45
48
  "user_id",
46
- "id",
47
49
  "created_at",
48
50
  "updated_at",
51
+ "id",
49
52
  "label",
53
+ "deleted",
50
54
  "exchange",
51
55
  ]
52
56
 
@@ -101,10 +105,13 @@ class ExchangeKey(BaseModel):
101
105
  _obj = cls.model_validate(
102
106
  {
103
107
  "user_id": obj.get("user_id"),
104
- "id": obj.get("id"),
105
108
  "created_at": obj.get("created_at"),
106
109
  "updated_at": obj.get("updated_at"),
110
+ "id": obj.get("id"),
107
111
  "label": obj.get("label"),
112
+ "deleted": (
113
+ obj.get("deleted") if obj.get("deleted") is not None else False
114
+ ),
108
115
  "exchange": obj.get("exchange"),
109
116
  }
110
117
  )
@@ -41,15 +41,15 @@ class FuturesTradingAction(BaseModel):
41
41
  Model for futures trading actions
42
42
  """ # noqa: E501
43
43
 
44
- id: Optional[StrictStr] = Field(
45
- default=None, description="Unique identifier for the resource"
46
- )
47
44
  created_at: Optional[StrictInt] = Field(
48
45
  default=None, description="Timestamp of creation"
49
46
  )
50
47
  updated_at: Optional[StrictInt] = Field(
51
48
  default=None, description="Timestamp of last update"
52
49
  )
50
+ id: Optional[StrictStr] = Field(
51
+ default=None, description="Unique identifier for the resource"
52
+ )
53
53
  execution_id: Optional[StrictStr] = None
54
54
  open_order_execution_id: Optional[StrictStr] = None
55
55
  action_type: TradingActionType = Field(description="The type of action.")
@@ -77,9 +77,9 @@ class FuturesTradingAction(BaseModel):
77
77
  leverage: Optional[Annotated[int, Field(strict=True, ge=1)]]
78
78
  margin_mode: Optional[MarginMode] = None
79
79
  __properties: ClassVar[List[str]] = [
80
- "id",
81
80
  "created_at",
82
81
  "updated_at",
82
+ "id",
83
83
  "execution_id",
84
84
  "open_order_execution_id",
85
85
  "action_type",
@@ -223,9 +223,9 @@ class FuturesTradingAction(BaseModel):
223
223
 
224
224
  _obj = cls.model_validate(
225
225
  {
226
- "id": obj.get("id"),
227
226
  "created_at": obj.get("created_at"),
228
227
  "updated_at": obj.get("updated_at"),
228
+ "id": obj.get("id"),
229
229
  "execution_id": obj.get("execution_id"),
230
230
  "open_order_execution_id": obj.get("open_order_execution_id"),
231
231
  "action_type": obj.get("action_type"),
@@ -32,15 +32,15 @@ class Notification(BaseModel):
32
32
  """ # noqa: E501
33
33
 
34
34
  user_id: StrictStr = Field(description="UID for the user")
35
- id: Optional[StrictStr] = Field(
36
- default=None, description="Unique identifier for the resource"
37
- )
38
35
  created_at: Optional[StrictInt] = Field(
39
36
  default=None, description="Timestamp of creation"
40
37
  )
41
38
  updated_at: Optional[StrictInt] = Field(
42
39
  default=None, description="Timestamp of last update"
43
40
  )
41
+ id: Optional[StrictStr] = Field(
42
+ default=None, description="Unique identifier for the resource"
43
+ )
44
44
  viewed: Optional[StrictBool] = Field(
45
45
  default=False, description="Whether the notification has been marked as seen"
46
46
  )
@@ -58,9 +58,9 @@ class Notification(BaseModel):
58
58
  )
59
59
  __properties: ClassVar[List[str]] = [
60
60
  "user_id",
61
- "id",
62
61
  "created_at",
63
62
  "updated_at",
63
+ "id",
64
64
  "viewed",
65
65
  "sent",
66
66
  "identifier",
@@ -119,9 +119,9 @@ class Notification(BaseModel):
119
119
  _obj = cls.model_validate(
120
120
  {
121
121
  "user_id": obj.get("user_id"),
122
- "id": obj.get("id"),
123
122
  "created_at": obj.get("created_at"),
124
123
  "updated_at": obj.get("updated_at"),
124
+ "id": obj.get("id"),
125
125
  "viewed": obj.get("viewed") if obj.get("viewed") is not None else False,
126
126
  "sent": obj.get("sent") if obj.get("sent") is not None else False,
127
127
  "identifier": obj.get("identifier"),
@@ -35,15 +35,15 @@ class Order(BaseModel):
35
35
  Response model for orders. All optional as the model is built step by step.
36
36
  """ # noqa: E501
37
37
 
38
- id: Optional[StrictStr] = Field(
39
- default=None, description="Unique identifier for the resource"
40
- )
41
38
  created_at: Optional[StrictInt] = Field(
42
39
  default=None, description="Timestamp of creation"
43
40
  )
44
41
  updated_at: Optional[StrictInt] = Field(
45
42
  default=None, description="Timestamp of last update"
46
43
  )
44
+ id: Optional[StrictStr] = Field(
45
+ default=None, description="Unique identifier for the resource"
46
+ )
47
47
  trading_action_id: Optional[StrictStr] = None
48
48
  execution_id: Optional[StrictStr] = None
49
49
  exchange_order_id: Optional[StrictStr] = None
@@ -88,9 +88,9 @@ class Order(BaseModel):
88
88
  )
89
89
  order_time: Optional[StrictInt] = None
90
90
  __properties: ClassVar[List[str]] = [
91
- "id",
92
91
  "created_at",
93
92
  "updated_at",
93
+ "id",
94
94
  "trading_action_id",
95
95
  "execution_id",
96
96
  "exchange_order_id",
@@ -276,9 +276,9 @@ class Order(BaseModel):
276
276
 
277
277
  _obj = cls.model_validate(
278
278
  {
279
- "id": obj.get("id"),
280
279
  "created_at": obj.get("created_at"),
281
280
  "updated_at": obj.get("updated_at"),
281
+ "id": obj.get("id"),
282
282
  "trading_action_id": obj.get("trading_action_id"),
283
283
  "execution_id": obj.get("execution_id"),
284
284
  "exchange_order_id": obj.get("exchange_order_id"),
@@ -32,15 +32,15 @@ class Strategy(BaseModel):
32
32
  Strategy model for read operations.
33
33
  """ # noqa: E501
34
34
 
35
- id: Optional[StrictStr] = Field(
36
- default=None, description="Unique identifier for the resource"
37
- )
38
35
  created_at: Optional[StrictInt] = Field(
39
36
  default=None, description="Timestamp of creation"
40
37
  )
41
38
  updated_at: Optional[StrictInt] = Field(
42
39
  default=None, description="Timestamp of last update"
43
40
  )
41
+ id: Optional[StrictStr] = Field(
42
+ default=None, description="Unique identifier for the resource"
43
+ )
44
44
  name: StrictStr = Field(description="Name of the strategy")
45
45
  description: StrictStr = Field(description="Description of the strategy")
46
46
  exchanges: List[StrategyExchangeInfo] = Field(
@@ -60,9 +60,9 @@ class Strategy(BaseModel):
60
60
  leverage: StrictInt = Field(description="Leverage for the strategy")
61
61
  market_type: MarketType = Field(description="Market of operation of the strategy")
62
62
  __properties: ClassVar[List[str]] = [
63
- "id",
64
63
  "created_at",
65
64
  "updated_at",
65
+ "id",
66
66
  "name",
67
67
  "description",
68
68
  "exchanges",
@@ -136,9 +136,9 @@ class Strategy(BaseModel):
136
136
 
137
137
  _obj = cls.model_validate(
138
138
  {
139
- "id": obj.get("id"),
140
139
  "created_at": obj.get("created_at"),
141
140
  "updated_at": obj.get("updated_at"),
141
+ "id": obj.get("id"),
142
142
  "name": obj.get("name"),
143
143
  "description": obj.get("description"),
144
144
  "exchanges": (
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: crypticorn
3
- Version: 2.11.9
3
+ Version: 2.12.1
4
4
  Summary: Maximise Your Crypto Trading Profits with Machine Learning
5
5
  Author-email: Crypticorn <timon@crypticorn.com>
6
6
  License-Expression: MIT
@@ -70,8 +70,8 @@ crypticorn/common/ansi_colors.py,sha256=-tMlUTE8NI7TPv7uj0kGRe-SI2hGaUNPKBFI_dfi
70
70
  crypticorn/common/auth.py,sha256=HxiAEej315qQGbX0p8WmQI50blUTOWsMWpCtguMx-A4,8786
71
71
  crypticorn/common/decorators.py,sha256=t5Y3vSJ-gt0n2vOYYjYN0dtzNXvZxrJs2SEItpzG8oo,1127
72
72
  crypticorn/common/enums.py,sha256=YE7ObydyWAKO8MOSQBwk9M1PzzaPvlnxc6Dbpu78QMk,787
73
- crypticorn/common/errors.py,sha256=6GykQkXoIWOvRA9EP5J-qNWUFFLxYnUwcjseX5SY4EA,28721
74
- crypticorn/common/exceptions.py,sha256=31WcS1OEcGBAMc3FnPrtb6jFbh6Ni1v9Kciz7Av4y84,6098
73
+ crypticorn/common/errors.py,sha256=x0iv6uZ1VhLBWJQEHhucgNo8_bSCM9tEotVt29ESn2Q,30029
74
+ crypticorn/common/exceptions.py,sha256=4oT58wcL9zQuqYU8op_36uZ1Kzt7JRCccu-o_usgqtU,6392
75
75
  crypticorn/common/logging.py,sha256=3ZTFB9j8Mqy_AlNYABUFQ_134OH0YtophJkP4_GDJ9w,4408
76
76
  crypticorn/common/middleware.py,sha256=O7XiXPimNYUhF9QTv6yFUTVlb91-SK-3CfTrWMNP6Ck,1011
77
77
  crypticorn/common/mixins.py,sha256=l7XQrBISaee6fDZXy96k0HnQ18XYocjTUXlNpVxhaOY,2206
@@ -86,7 +86,7 @@ crypticorn/common/router/status_router.py,sha256=it6kfvx_Pn4Rv06fmViwhwr-m6f4WuS
86
86
  crypticorn/hive/__init__.py,sha256=hRfTlEzEql4msytdUC_04vfaHzVKG5CGZle1M-9QFgY,81
87
87
  crypticorn/hive/main.py,sha256=eoo5bTmbfS94zuYHDkD20orNANESYuTURHQNw3pIEvQ,2875
88
88
  crypticorn/hive/utils.py,sha256=5T2GYnIFazXgAdUlO03xWqcMWhWkM82cfWvwsO8geHE,2040
89
- crypticorn/hive/client/__init__.py,sha256=9H8k_fi6UDVrVwnHH8i-Q_1CNTe0f_Ti5gBmt42AtFo,2645
89
+ crypticorn/hive/client/__init__.py,sha256=Exioq01qeou_AXsWpEoLD-AhIlxmdTPF9hXhonk8d0s,2706
90
90
  crypticorn/hive/client/api_client.py,sha256=fDFsACK7hxXw_sgt3ZJVH2RplEdUhR0YZd4tsZA9P5Q,26869
91
91
  crypticorn/hive/client/api_response.py,sha256=WhxwYDSMm6wPixp9CegO8dJzjFxDz3JF1yCq9s0ZqKE,639
92
92
  crypticorn/hive/client/configuration.py,sha256=J4tZF5m71BMOFE1rfWzgrBWEPQ-DQ-FByFJiNZ81W48,19105
@@ -98,13 +98,14 @@ crypticorn/hive/client/api/admin_api.py,sha256=ov2vApFo50A3uOAq717PBhrw2JpQSsHyB
98
98
  crypticorn/hive/client/api/data_api.py,sha256=bXEx44opuJsJtNJORlL2A9By2FA-vhCep_ath_uIRXA,23218
99
99
  crypticorn/hive/client/api/models_api.py,sha256=ID0-IJjxRSQO6rq0HFaEKvEArD45QI2ULJIE5FFXJfg,76071
100
100
  crypticorn/hive/client/api/status_api.py,sha256=KIpSewGuK6_cUT6dfUjlvt35k1xW4YZcuSTCPWFURms,19577
101
- crypticorn/hive/client/models/__init__.py,sha256=idst4l4rnxk0BpUq-FoUAWg6cG4iXUo2mH6sQTMoUmA,1795
102
- crypticorn/hive/client/models/api_error_identifier.py,sha256=VbjaaF0d7PJL9abHZqoF_Ht8SUcqhfO2nVDeyTNhtyM,4915
101
+ crypticorn/hive/client/models/__init__.py,sha256=wnx72H1vU0TmWQhwe0Lq5AasPj03E9kz8Yg5UYDL4NA,1856
102
+ crypticorn/hive/client/models/api_error_identifier.py,sha256=aDMlBzjQ7xu9ZsSzbxVUl54XcCkRnhIaOUfcZIvNHEM,4995
103
103
  crypticorn/hive/client/models/api_error_level.py,sha256=huHUOq0gBgH-MR4SZL4P-432DeW8UaMHjzvvAPvwSCE,725
104
104
  crypticorn/hive/client/models/api_error_type.py,sha256=IN_aDBQQP7sKXUNk-oElKcCBg7CYfCt8efL1qvhb54g,764
105
+ crypticorn/hive/client/models/coin_info.py,sha256=7JQ8pkcGxz36yjAR7z0AaudkCp2Ahq88hLKGmjSZT8o,3242
105
106
  crypticorn/hive/client/models/coins.py,sha256=4rPueVFUDbdU-8KrZ5b1jwqasf3uMT_cIsORyKbeydc,875
106
107
  crypticorn/hive/client/models/data_download_response.py,sha256=AVPLov8RO9zq6vThUe7M4p3LlhZQytXyPbFZD1AFDfY,3649
107
- crypticorn/hive/client/models/data_info.py,sha256=xhP_JFJP9jikOsOsPT4DJEbwGpDB8rfo5FDA1LT0ecs,6633
108
+ crypticorn/hive/client/models/data_info.py,sha256=UtmA3gvkJr2-rRL5MPFMWe5LbT_ta-mxO6HbGUGnP2A,7102
108
109
  crypticorn/hive/client/models/data_options.py,sha256=akpUT6EaGS2AxiKPAMS3pwl9XuRoSjKe9T91xhjGlaI,2785
109
110
  crypticorn/hive/client/models/data_version.py,sha256=Id_PKD-6GDVgkxbg194s3gOokgpX3WbLQ3CGdctnajU,663
110
111
  crypticorn/hive/client/models/data_version_info.py,sha256=LdwEwSgGfOzjitxiPXZfEp7IDkMQJs_7SCftZI0-5TQ,2687
@@ -119,7 +120,7 @@ crypticorn/hive/client/models/model_read.py,sha256=QGYajrM18hxKzJYVsi0-gychCgZM3
119
120
  crypticorn/hive/client/models/model_status.py,sha256=-2H6CHw6jhJgv4VJgwr1sgN2NtT1m7LGCX7L8ULTxEQ,685
120
121
  crypticorn/hive/client/models/model_update.py,sha256=iO-VtYt0aRzj9z_GeIUK2OVNg9yvM01OUVfWyCA36fc,2413
121
122
  crypticorn/hive/client/models/target.py,sha256=otOJK8s5WVUen6J1AQZpRiD330RIpaJU6JShb-EU8Hs,777
122
- crypticorn/hive/client/models/target_info.py,sha256=hFaOMZlirH2B68DQstL_c4WvtejwXyOk67lxIaeuh3Q,2857
123
+ crypticorn/hive/client/models/target_info.py,sha256=bnQl3505eQc1-dXZqrBCHA_5jgO8OfBiyDl5PQPlGww,3377
123
124
  crypticorn/hive/client/models/target_type.py,sha256=FUMaEFkPM7EvStPJE1auimDJ9mxDf6pbsFf-dF3coGw,684
124
125
  crypticorn/klines/__init__.py,sha256=9UUW013uZ5x4evz5zRUxbNid-6O9WAPPYvPZIHpAwms,87
125
126
  crypticorn/klines/main.py,sha256=C_I_Q1VBVJ7dh8oTu7-lMFvb--rYYRjDq9trA1jEtyM,2694
@@ -195,7 +196,7 @@ crypticorn/metrics/client/models/time_interval.py,sha256=8bHhMNt56xVGvJi5xNFMrAk
195
196
  crypticorn/metrics/client/models/trading_status.py,sha256=_S-KAyuCJsLLY0UTcNKkhLWoPJS-ywf7y3yTdhIuF0w,746
196
197
  crypticorn/pay/__init__.py,sha256=ux-B-YbNetpTlZTb2fijuGUOEmSm4IB0fYtieGnVDBg,78
197
198
  crypticorn/pay/main.py,sha256=AP0bQLIP6QehbR6o7lswSu2HTPjnnkTD72VsHMYw_Tk,697
198
- crypticorn/pay/client/__init__.py,sha256=t51BXLDtwIAkAUFYhBnme4xRzqf-zHwaJ6tvPPUEeDo,2115
199
+ crypticorn/pay/client/__init__.py,sha256=fHk-Ut0ujx6rNiY3GtMY-1oY0unRSdBEKqxJS3Ch8hk,2243
199
200
  crypticorn/pay/client/api_client.py,sha256=HjmMJeQ4hcDNWm5I9LEQtZEGD1hPeyQU2y_SLmgD9mE,26870
200
201
  crypticorn/pay/client/api_response.py,sha256=WhxwYDSMm6wPixp9CegO8dJzjFxDz3JF1yCq9s0ZqKE,639
201
202
  crypticorn/pay/client/configuration.py,sha256=-PRnl7AEOWSGACFOzIF42EMTZ8iGluXwhZvqAhSRXPI,19110
@@ -203,25 +204,27 @@ crypticorn/pay/client/exceptions.py,sha256=hbV_qDEzFJ2GVU2hVi6DqQMFztSBH1M8Nnuzo
203
204
  crypticorn/pay/client/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
204
205
  crypticorn/pay/client/rest.py,sha256=GfZLzoQiqFOYC1jIwCuxeY9XCOxlpu-Cvwn2Tu3Q1n0,6981
205
206
  crypticorn/pay/client/api/__init__.py,sha256=OLynXJY1ujBoaam3yRbuC5QWZK31RJRGp_MWrmJ6DqY,359
206
- crypticorn/pay/client/api/admin_api.py,sha256=GZSMjlrvC6S9-yrtNRH2sv9GNoh2HUEYkMw6iSx6JJo,58860
207
- crypticorn/pay/client/api/now_payments_api.py,sha256=3BouXcha-xARDX6_soa5egqRszEO8f8QhN4WjOpP8tk,30346
208
- crypticorn/pay/client/api/payments_api.py,sha256=XlCNkD6s_6nH8fktneoqMq4ZTHB9YkotVqX_edy614o,33820
209
- crypticorn/pay/client/api/products_api.py,sha256=zh8y_3YgpCUZT7wAGAR7lDheR98y53YGJHwOU6VJQjw,33586
207
+ crypticorn/pay/client/api/admin_api.py,sha256=YxMUHucqPbl3oorYE0hJs9nn3TTKHrFpOGru0QcP7IA,59897
208
+ crypticorn/pay/client/api/now_payments_api.py,sha256=HhhgdOUwrFG0-T2D2vDOdN57GmEcMYM48qr6jYpezJ0,49589
209
+ crypticorn/pay/client/api/payments_api.py,sha256=fza4PnsZk9-iNubfgeprT01REcu9LgFhpkxpzVCVnSg,24640
210
+ crypticorn/pay/client/api/products_api.py,sha256=h27SftXedInUka6wU4Kje_mjArltJBnNEdMn3gSL2rE,33517
210
211
  crypticorn/pay/client/api/status_api.py,sha256=G7ACZnRoKX87WbUJ8eI47XtQu_u1Xl0H1OHnC8-XrQg,19581
211
- crypticorn/pay/client/models/__init__.py,sha256=L7iyMDmXtedB6N95TsBvoGYyMOhoYckpGFdz_kX8TP8,1196
212
- crypticorn/pay/client/models/exception_detail.py,sha256=RKqu-lNMwpLu_lcLJe5WmSFCcsaHFKCDS8uCcpcd6L8,3664
212
+ crypticorn/pay/client/models/__init__.py,sha256=Q-tN_kaQNpoCunlfMeGysTcwl2lyP9S5nJu_HFu4RZ4,1324
213
+ crypticorn/pay/client/models/api_error_identifier.py,sha256=yjWWaZpMnPEbb9dZOLKhRhvn8znN0d6oJapOQUVDfSQ,5002
214
+ crypticorn/pay/client/models/api_error_level.py,sha256=tPnObV-r0FK9e3SsqA-TBTxF7cLygn-kS5-Q0LAi8Zs,732
215
+ crypticorn/pay/client/models/api_error_type.py,sha256=eD86iPZAOK6pL1CdCFivSQRbjpa9VcwFEl55xzjejqY,771
216
+ crypticorn/pay/client/models/exception_detail.py,sha256=wZUdv59lViyGUJSdfZYu6gjO1gugd97XZSkVgtpcxDg,3801
213
217
  crypticorn/pay/client/models/log_level.py,sha256=Z6gL84MpIt8u18Brh-oZT217IQB1w8H1zhHnWZtKU4M,729
214
218
  crypticorn/pay/client/models/now_create_invoice_req.py,sha256=9MKrW4ETKdQLFuGUXcyqUwFkQ_4utWrhGvLzUxOoFws,6644
215
219
  crypticorn/pay/client/models/now_create_invoice_res.py,sha256=zsdEAJjyZCmZdaag6Jr6XdLJIKZkOrx03K8t0IY7aTU,6957
216
220
  crypticorn/pay/client/models/payment.py,sha256=SxHoHZ4AKWPk0r_1oeiP-7Vz5RdN9ow02cfZM0XKHdA,3543
217
221
  crypticorn/pay/client/models/payment_status.py,sha256=S3-Xnvumq-c0aNkx3HzfsxglTf6E1-5HgjJTHX_d9QE,823
218
- crypticorn/pay/client/models/product_create.py,sha256=lY_7nOdUrKwZwEr22MnXk-28Hk7ZeeTlnDJMl9kMf9g,3543
219
- crypticorn/pay/client/models/product_read.py,sha256=H2DQJNlO7fpL8R5KScprmn0-23orEazK2skr7c-KBHk,3647
220
- crypticorn/pay/client/models/product_sub_read.py,sha256=5B0W9-tEypWUpmjUyvuaT_bgVq5wRsDcK-rWQDdU3wY,3156
222
+ crypticorn/pay/client/models/product.py,sha256=78_QcOVHEYtG2WQVCTIw_Wm-oATqNlpNcrY9-CNe_v8,3633
223
+ crypticorn/pay/client/models/product_create.py,sha256=uoVQK31dEJWpvtJETuQEK_wyAM4AOOWRYcZK8J3HUS8,3541
221
224
  crypticorn/pay/client/models/product_update.py,sha256=dM27vbcHRgtu3YrFgux3ufg8QMN5ta6OnGGRIe8Wrjk,4441
222
225
  crypticorn/pay/client/models/provider.py,sha256=w2gJkEoTBnW-VluQ3AYLouWelszdf8Y4LnAVkWJUkTQ,656
223
- crypticorn/pay/client/models/response_getuptime.py,sha256=2q_8MrnJxrIVkfl6dOP3aY0ZtBcTDgxjW_j1ldL6sw8,5021
224
- crypticorn/pay/client/models/scope.py,sha256=YAgY33KvNjgIyjse2bezwatc2VrMwBHYjf8oCWR1dnU,2419
226
+ crypticorn/pay/client/models/scope.py,sha256=tHhMZxKekwRw7--gljw5ocYXk7Sm1XyEJlaOQdiL-Y4,2457
227
+ crypticorn/pay/client/models/subscription.py,sha256=mkSaNn4bXIGRPCsGxwDoPjvhXYhgCFaeZhmeAASNSf4,3140
225
228
  crypticorn/trade/__init__.py,sha256=QzScH9n-ly3QSaBSpPP7EqYwhdzDqYCZJs0-AhEhrsY,84
226
229
  crypticorn/trade/main.py,sha256=h-lh8ESY0E5lKB5bg-D41TPxiNND8g4pFAd7updpd0Y,1074
227
230
  crypticorn/trade/client/__init__.py,sha256=Y0VHAIUGvjZR2UNFaAJT9_ciXyQlcVuF2d04cufFkEI,4028
@@ -233,51 +236,51 @@ crypticorn/trade/client/py.typed,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hS
233
236
  crypticorn/trade/client/rest.py,sha256=7vR8Z4wHrU1uGZyW1B6j96Qo5PECAfMl0-d-wxl6S0A,7067
234
237
  crypticorn/trade/client/api/__init__.py,sha256=PzT1LP1-ner5PA-f_n5v97ifkP05Yh-k-ReOI9T1j-o,727
235
238
  crypticorn/trade/client/api/admin_api.py,sha256=x3rSuXi68grjnBZ8ro5-7wjnkLR20qtqf9zmN3KuJcg,59879
236
- crypticorn/trade/client/api/api_keys_api.py,sha256=qfauZXQySnqnah6mvZmTk5xLGk9Axsjeq_15eR4n9Dc,50970
239
+ crypticorn/trade/client/api/api_keys_api.py,sha256=HltCdJ-UbI9gQ5fvIvpEaAQe3ZCoq7RTiZ_2uHI7u3s,53819
237
240
  crypticorn/trade/client/api/bots_api.py,sha256=Ub6SVM6PgA0exB4eGVtipvm19epKNtIpxiepdCjztLU,50859
238
241
  crypticorn/trade/client/api/exchanges_api.py,sha256=PVTRapNFD-tOVJmSaC_X_8NbWMxM97YDB77IljKdCkw,29007
239
242
  crypticorn/trade/client/api/futures_trading_panel_api.py,sha256=L4wVotLLu4p-44nEInIgM79I40xeObmn3hN1zYPiNWM,50071
240
243
  crypticorn/trade/client/api/notifications_api.py,sha256=-_b61sYBL7jBkSnBqhN8feDzUA3K8KLZOiLPV6Wae24,61426
241
- crypticorn/trade/client/api/orders_api.py,sha256=AtDyddOSCp7Y974F45niIaql9w70KVi-7kTV7ZZEOM8,11065
244
+ crypticorn/trade/client/api/orders_api.py,sha256=Sz-jOWtvVUz_Ok_WHmalN9aRdjxRyvrl3MEngrrRC5k,11167
242
245
  crypticorn/trade/client/api/status_api.py,sha256=YtSZh7xuOl_vq9xfPqdnfuOEA9EpftOqCR7H7yWVAcI,19671
243
246
  crypticorn/trade/client/api/strategies_api.py,sha256=bUzv2DNBlYJsjABI-Jsrg_Sgx7-Vwzv4GLFsKXfEd-M,41707
244
247
  crypticorn/trade/client/api/trading_actions_api.py,sha256=PBl1hSkkP9yRSRbr7jpUzgH4VEFOW7fHaNYYvD37fp8,32634
245
248
  crypticorn/trade/client/models/__init__.py,sha256=T3rP5b5DS5tiW-cgTQuHMQ8L_-OrrTR8vnB8cwON4io,2723
246
- crypticorn/trade/client/models/api_error_identifier.py,sha256=2bN3TUHA4aAyFOvewUM3-EKzBAXqWe9UEQc5YbIuK_M,5086
249
+ crypticorn/trade/client/models/api_error_identifier.py,sha256=Qcwl5BqRI6mx2dKDtkXwHFeEYUcc3sR6_234GXpTnYI,5074
247
250
  crypticorn/trade/client/models/api_error_level.py,sha256=8Sau6q3K29fg-EIGnex0yrw7gXJZLmyGTicYIXcehmY,816
248
251
  crypticorn/trade/client/models/api_error_type.py,sha256=34NBgCP296pQx8doVpeqlhopPfBfRH1I-135YVtN19Y,855
249
- crypticorn/trade/client/models/bot.py,sha256=UhpD-sRc4AZvnqqlVBfY9_P4zCCN2qL2jPocH1jYpYU,5513
252
+ crypticorn/trade/client/models/bot.py,sha256=8A6rbg_HW4NWhXknOyHmHEHxzfhRC1TqODOLh6BHrm0,5513
250
253
  crypticorn/trade/client/models/bot_create.py,sha256=tMko-M8c1iTlbxP8LcCALr1Ep2TMwgS0e9aZlrtQdX4,3271
251
254
  crypticorn/trade/client/models/bot_status.py,sha256=Yga6SVNHBOcJhBENCWi7I12aSBhMDPI5uQrTPBReOQw,806
252
255
  crypticorn/trade/client/models/bot_update.py,sha256=ptZquK4D7eUkfBLqZK5F2uJt-5am54E8KVJ7xu9JAfE,3458
253
256
  crypticorn/trade/client/models/exception_detail.py,sha256=mW4Zxb1KtRMboZDupnhGpkiYHi1e2JE_j3qewgTwfbc,3891
254
257
  crypticorn/trade/client/models/exchange.py,sha256=dGaPReYJA4trppExGlKrYxmBBqJKuxYSSK37p0e5LXI,802
255
- crypticorn/trade/client/models/exchange_key.py,sha256=cDPYE8N736Eges65jAqDEPjUNX3l2Nmfhy-Dq-1uSME,3527
258
+ crypticorn/trade/client/models/exchange_key.py,sha256=aGyEDANSuxUdKFWTnNDi2HvAh7a-tHrx3Xi2uaT8Jig,3814
256
259
  crypticorn/trade/client/models/exchange_key_create.py,sha256=n6yiomatf9FGB5GQpB2gVhWVmTzd7Md3rEFM2gPB2Mc,3418
257
260
  crypticorn/trade/client/models/exchange_key_update.py,sha256=6rBpzKIAzRq7Wg_P-nNSOJKoljTm3Lq3B8cVkZtM50E,3725
258
261
  crypticorn/trade/client/models/execution_ids.py,sha256=0MHzL43PX-aMjKxCkcLTPbszG5q0KruZPwlColEZW58,2963
259
262
  crypticorn/trade/client/models/futures_balance.py,sha256=BePXd2bngkHjcKtZButMFcsU4RS7MU1QkvzF46q8X6U,4191
260
- crypticorn/trade/client/models/futures_trading_action.py,sha256=VsSGZ1EyAm4h0OMttPFCQWObLk65n77-xlbGohHm5rE,9767
263
+ crypticorn/trade/client/models/futures_trading_action.py,sha256=l24IwhY8VcUsrGzSFlhtt3C3oNBfZtSIed4bPDRcg-4,9767
261
264
  crypticorn/trade/client/models/futures_trading_action_create.py,sha256=gAnmn8VIFV2QUJJnpcUuZS5kzHZH7y0Ll4NYCsgK82Q,8527
262
265
  crypticorn/trade/client/models/log_level.py,sha256=Fv2WlajyWZTiXBRNyFQ1x0xqh5nrzKL_0k7fyt92bHA,813
263
266
  crypticorn/trade/client/models/margin_mode.py,sha256=kG1ElFka5OYQI6YQOH1JhGY3qo-ZQhdMTqIYDpqPlgs,777
264
267
  crypticorn/trade/client/models/market_type.py,sha256=OkEE5lAPw2FAudw_98BLcyglEXQhb2uhFeP82W7WFPM,755
265
- crypticorn/trade/client/models/notification.py,sha256=Xl3hsWJP24-hJv-3QAZFyN_BBI9PNyp73Y_wqcmUyYs,4416
268
+ crypticorn/trade/client/models/notification.py,sha256=QbvFkWGjolyba7trkG8SdJE1gfzdUftfywCMUe1IDwQ,4416
266
269
  crypticorn/trade/client/models/notification_create.py,sha256=iXkqvDhFYGoKW4yCWkJP7_5q-DPpJpE0FqWKqK21CE8,3749
267
270
  crypticorn/trade/client/models/notification_update.py,sha256=a1tpTjKWA2kOqBJxxeyheMdIOZ_2NtAYu9X7R5h1M3c,3034
268
- crypticorn/trade/client/models/order.py,sha256=f82QyKRMteuO7bTcTJj9BT1fh9j9diO7e3UARU6eKXM,12252
271
+ crypticorn/trade/client/models/order.py,sha256=IQVzH4rnVuHSAb7uwbjC90OLB_GP7iwTNf6UJUb2ZmA,12252
269
272
  crypticorn/trade/client/models/order_status.py,sha256=dQkbXtPSW4bVGQOVL0M9-Q_fMpAUa4v3uwuuUwXNcnY,852
270
273
  crypticorn/trade/client/models/post_futures_action.py,sha256=KBI3lPayQQNfQP8Attow9tkuo9zimJk19cKQQb9JK-w,3123
271
274
  crypticorn/trade/client/models/spot_trading_action_create.py,sha256=NGtT-hpfhYYizIjGZQ0X67IxP9l99aiCjvxu1oDNnxA,7668
272
- crypticorn/trade/client/models/strategy.py,sha256=cN2X-biPaBuEzG0qOZ4eu5mPIF7xzqYGwlNdvYl9Z8s,5797
275
+ crypticorn/trade/client/models/strategy.py,sha256=Jlgt4oxseebVkbhthQDH3ayOLO2muYnyP6Kg23W02ic,5797
273
276
  crypticorn/trade/client/models/strategy_create.py,sha256=jtr1lUcafFzqYQKiuSXWEqfhLiT4WPj9yw63jtVW6kI,5285
274
277
  crypticorn/trade/client/models/strategy_exchange_info.py,sha256=MhPqBXHNM-jM0JPYHuhzfTKTzEaaNBGMwK9FW2Kq_OI,2841
275
278
  crypticorn/trade/client/models/strategy_update.py,sha256=f7UsKSlNardj5h6uqHYbacjWWQscXkFDqcLOoefa28M,5048
276
279
  crypticorn/trade/client/models/tpsl.py,sha256=vUWMI9T69kCgiN0aQobiIkGFb3MYdMfkhPUjQuCLeYE,4405
277
280
  crypticorn/trade/client/models/trading_action_type.py,sha256=BysUEOl85zs79EA2zOcDN1EExcpQdABaJ4Jz08_z8VU,857
278
- crypticorn-2.11.9.dist-info/licenses/LICENSE,sha256=HonAVvzFXkP2C1d7D3ByIKPwjGH8NcHTAQvKH7uvOHQ,1856
279
- crypticorn-2.11.9.dist-info/METADATA,sha256=VTjaoMrJ1GCsHKX2aFPlPowrls5x2slXIt61LFGZrIo,8640
280
- crypticorn-2.11.9.dist-info/WHEEL,sha256=Nw36Djuh_5VDukK0H78QzOX-_FQEo6V37m3nkm96gtU,91
281
- crypticorn-2.11.9.dist-info/entry_points.txt,sha256=d_xHsGvUTebPveVUK0SrpDFQ5ZRSjlI7lNCc11sn2PM,59
282
- crypticorn-2.11.9.dist-info/top_level.txt,sha256=EP3NY216qIBYfmvGl0L2Zc9ItP0DjGSkiYqd9xJwGcM,11
283
- crypticorn-2.11.9.dist-info/RECORD,,
281
+ crypticorn-2.12.1.dist-info/licenses/LICENSE,sha256=HonAVvzFXkP2C1d7D3ByIKPwjGH8NcHTAQvKH7uvOHQ,1856
282
+ crypticorn-2.12.1.dist-info/METADATA,sha256=wnt9k2NXeF-22FslfQU18TVQxSvZ4jqyqpfAYiU9XPg,8640
283
+ crypticorn-2.12.1.dist-info/WHEEL,sha256=zaaOINJESkSfm_4HQVc5ssNzHCPXhJm0kEUakpsEHaU,91
284
+ crypticorn-2.12.1.dist-info/entry_points.txt,sha256=d_xHsGvUTebPveVUK0SrpDFQ5ZRSjlI7lNCc11sn2PM,59
285
+ crypticorn-2.12.1.dist-info/top_level.txt,sha256=EP3NY216qIBYfmvGl0L2Zc9ItP0DjGSkiYqd9xJwGcM,11
286
+ crypticorn-2.12.1.dist-info/RECORD,,
@@ -1,5 +1,5 @@
1
1
  Wheel-Version: 1.0
2
- Generator: setuptools (80.7.1)
2
+ Generator: setuptools (80.8.0)
3
3
  Root-Is-Purelib: true
4
4
  Tag: py3-none-any
5
5
 
@@ -1,159 +0,0 @@
1
- # coding: utf-8
2
-
3
- """
4
- Payment API
5
-
6
- API for accepting payments and storing subscriptions
7
-
8
- The version of the OpenAPI document: 1.0.0
9
- Generated by OpenAPI Generator (https://openapi-generator.tech)
10
-
11
- Do not edit the class manually.
12
- """ # noqa: E501
13
-
14
-
15
- from __future__ import annotations
16
- from inspect import getfullargspec
17
- import json
18
- import pprint
19
- import re # noqa: F401
20
- from pydantic import (
21
- BaseModel,
22
- ConfigDict,
23
- Field,
24
- StrictInt,
25
- StrictStr,
26
- ValidationError,
27
- field_validator,
28
- )
29
- from typing import Optional
30
- from typing import Union, Any, List, Set, TYPE_CHECKING, Optional, Dict
31
- from typing_extensions import Literal, Self
32
- from pydantic import Field
33
-
34
- RESPONSEGETUPTIME_ANY_OF_SCHEMAS = ["int", "str"]
35
-
36
-
37
- class ResponseGetuptime(BaseModel):
38
- """
39
- ResponseGetuptime
40
- """
41
-
42
- # data type: int
43
- anyof_schema_1_validator: Optional[StrictInt] = None
44
- # data type: str
45
- anyof_schema_2_validator: Optional[StrictStr] = None
46
- if TYPE_CHECKING:
47
- actual_instance: Optional[Union[int, str]] = None
48
- else:
49
- actual_instance: Any = None
50
- any_of_schemas: Set[str] = {"int", "str"}
51
-
52
- model_config = {
53
- "validate_assignment": True,
54
- "protected_namespaces": (),
55
- }
56
-
57
- def __init__(self, *args, **kwargs) -> None:
58
- if args:
59
- if len(args) > 1:
60
- raise ValueError(
61
- "If a position argument is used, only 1 is allowed to set `actual_instance`"
62
- )
63
- if kwargs:
64
- raise ValueError(
65
- "If a position argument is used, keyword arguments cannot be used."
66
- )
67
- super().__init__(actual_instance=args[0])
68
- else:
69
- super().__init__(**kwargs)
70
-
71
- @field_validator("actual_instance")
72
- def actual_instance_must_validate_anyof(cls, v):
73
- instance = ResponseGetuptime.model_construct()
74
- error_messages = []
75
- # validate data type: int
76
- try:
77
- instance.anyof_schema_1_validator = v
78
- return v
79
- except (ValidationError, ValueError) as e:
80
- error_messages.append(str(e))
81
- # validate data type: str
82
- try:
83
- instance.anyof_schema_2_validator = v
84
- return v
85
- except (ValidationError, ValueError) as e:
86
- error_messages.append(str(e))
87
- if error_messages:
88
- # no match
89
- raise ValueError(
90
- "No match found when setting the actual_instance in ResponseGetuptime with anyOf schemas: int, str. Details: "
91
- + ", ".join(error_messages)
92
- )
93
- else:
94
- return v
95
-
96
- @classmethod
97
- def from_dict(cls, obj: Dict[str, Any]) -> Self:
98
- return cls.from_json(json.dumps(obj))
99
-
100
- @classmethod
101
- def from_json(cls, json_str: str) -> Self:
102
- """Returns the object represented by the json string"""
103
- instance = cls.model_construct()
104
- error_messages = []
105
- # deserialize data into int
106
- try:
107
- # validation
108
- instance.anyof_schema_1_validator = json.loads(json_str)
109
- # assign value to actual_instance
110
- instance.actual_instance = instance.anyof_schema_1_validator
111
- return instance
112
- except (ValidationError, ValueError) as e:
113
- error_messages.append(str(e))
114
- # deserialize data into str
115
- try:
116
- # validation
117
- instance.anyof_schema_2_validator = json.loads(json_str)
118
- # assign value to actual_instance
119
- instance.actual_instance = instance.anyof_schema_2_validator
120
- return instance
121
- except (ValidationError, ValueError) as e:
122
- error_messages.append(str(e))
123
-
124
- if error_messages:
125
- # no match
126
- raise ValueError(
127
- "No match found when deserializing the JSON string into ResponseGetuptime with anyOf schemas: int, str. Details: "
128
- + ", ".join(error_messages)
129
- )
130
- else:
131
- return instance
132
-
133
- def to_json(self) -> str:
134
- """Returns the JSON representation of the actual instance"""
135
- if self.actual_instance is None:
136
- return "null"
137
-
138
- if hasattr(self.actual_instance, "to_json") and callable(
139
- self.actual_instance.to_json
140
- ):
141
- return self.actual_instance.to_json()
142
- else:
143
- return json.dumps(self.actual_instance)
144
-
145
- def to_dict(self) -> Optional[Union[Dict[str, Any], int, str]]:
146
- """Returns the dict representation of the actual instance"""
147
- if self.actual_instance is None:
148
- return None
149
-
150
- if hasattr(self.actual_instance, "to_dict") and callable(
151
- self.actual_instance.to_dict
152
- ):
153
- return self.actual_instance.to_dict()
154
- else:
155
- return self.actual_instance
156
-
157
- def to_str(self) -> str:
158
- """Returns the string representation of the actual instance"""
159
- return pprint.pformat(self.model_dump())