circle-developer-controlled-wallets 1.1.1__py3-none-any.whl → 1.2.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.
Potentially problematic release.
This version of circle-developer-controlled-wallets might be problematic. Click here for more details.
- circle/web3/developer_controlled_wallets/__init__.py +40 -33
- circle/web3/developer_controlled_wallets/api/signing_api.py +193 -38
- circle/web3/developer_controlled_wallets/api/token_lookup_api.py +8 -8
- circle/web3/developer_controlled_wallets/api/transactions_api.py +47 -47
- circle/web3/developer_controlled_wallets/api/wallet_sets_api.py +14 -14
- circle/web3/developer_controlled_wallets/api/wallets_api.py +30 -30
- circle/web3/developer_controlled_wallets/api_client.py +1 -1
- circle/web3/developer_controlled_wallets/configuration.py +1 -1
- circle/web3/developer_controlled_wallets/models/__init__.py +39 -32
- circle/web3/developer_controlled_wallets/models/{create_developer_transaction_cancel200_response.py → accelerate_transaction_for_developer.py} +11 -11
- circle/web3/developer_controlled_wallets/models/{accelerate_transaction_for_developer_response.py → accelerate_transaction_for_developer_data.py} +8 -8
- circle/web3/developer_controlled_wallets/models/balance.py +3 -3
- circle/web3/developer_controlled_wallets/models/{wallet_set2.py → balances.py} +11 -11
- circle/web3/developer_controlled_wallets/models/{get_balances_response.py → balances_data.py} +8 -8
- circle/web3/developer_controlled_wallets/models/base_screening_decision.py +88 -0
- circle/web3/developer_controlled_wallets/models/blockchain.py +2 -0
- circle/web3/developer_controlled_wallets/models/cancel_transaction_for_developer.py +87 -0
- circle/web3/developer_controlled_wallets/models/{create_developer_transaction_contract_execution200_response.py → create_contract_execution_transaction_for_developer.py} +13 -13
- circle/web3/developer_controlled_wallets/models/{create_contract_execution_transaction_for_developer_response.py → create_contract_execution_transaction_for_developer_data.py} +8 -8
- circle/web3/developer_controlled_wallets/models/create_contract_execution_transaction_for_developer_request.py +4 -4
- circle/web3/developer_controlled_wallets/models/create_transfer_transaction_for_developer_request.py +4 -4
- circle/web3/developer_controlled_wallets/models/create_transfer_transaction_for_developer_response.py +9 -8
- circle/web3/developer_controlled_wallets/models/{cancel_transaction_for_developer_response.py → create_transfer_transaction_for_developer_response_data.py} +8 -8
- circle/web3/developer_controlled_wallets/models/error.py +3 -3
- circle/web3/developer_controlled_wallets/models/estimate_contract_execution_transaction_fee_request.py +2 -2
- circle/web3/developer_controlled_wallets/models/estimate_contract_execution_transaction_fee_request_blockchain.py +2 -0
- circle/web3/developer_controlled_wallets/models/{get_transaction200_response.py → estimate_transaction_fee.py} +13 -13
- circle/web3/developer_controlled_wallets/models/{estimate_transaction_fee_response.py → estimate_transaction_fee_data.py} +15 -15
- circle/web3/developer_controlled_wallets/models/estimate_transfer_transaction_fee_request.py +1 -1
- circle/web3/developer_controlled_wallets/models/nft.py +5 -5
- circle/web3/developer_controlled_wallets/models/{wallet2.py → nfts.py} +11 -11
- circle/web3/developer_controlled_wallets/models/{get_nfts_response.py → nfts_data.py} +8 -8
- circle/web3/developer_controlled_wallets/models/risk_action.py +38 -0
- circle/web3/developer_controlled_wallets/models/risk_category.py +48 -0
- circle/web3/developer_controlled_wallets/models/risk_score.py +40 -0
- circle/web3/developer_controlled_wallets/models/risk_signal.py +101 -0
- circle/web3/developer_controlled_wallets/models/risk_type.py +37 -0
- circle/web3/developer_controlled_wallets/models/{sign_message_for_developer_request.py → sign_message_request.py} +9 -9
- circle/web3/developer_controlled_wallets/models/sign_transaction_request.py +89 -0
- circle/web3/developer_controlled_wallets/models/sign_transaction_response.py +87 -0
- circle/web3/developer_controlled_wallets/models/{sign_typed_data_for_developer_response.py → sign_transaction_response_data.py} +13 -11
- circle/web3/developer_controlled_wallets/models/{sign_typed_data_for_developer_request.py → sign_typed_data_request.py} +9 -9
- circle/web3/developer_controlled_wallets/models/{list_wallet_nfts200_response.py → signature_response.py} +13 -13
- circle/web3/developer_controlled_wallets/models/{sign_message_for_developer_response.py → signature_response_data.py} +8 -8
- circle/web3/developer_controlled_wallets/models/token.py +103 -0
- circle/web3/developer_controlled_wallets/models/token_blockchain.py +2 -0
- circle/web3/developer_controlled_wallets/models/token_response.py +9 -25
- circle/web3/developer_controlled_wallets/models/{get_token_by_id_response.py → token_response_data.py} +11 -11
- circle/web3/developer_controlled_wallets/models/token_standard.py +6 -0
- circle/web3/developer_controlled_wallets/models/transaction.py +12 -6
- circle/web3/developer_controlled_wallets/models/{estimated_transaction_fee.py → transaction_fee.py} +16 -14
- circle/web3/developer_controlled_wallets/models/{list_transactions200_response.py → transaction_response.py} +13 -13
- circle/web3/developer_controlled_wallets/models/{get_transaction_by_id_response.py → transaction_response_data.py} +8 -8
- circle/web3/developer_controlled_wallets/models/transaction_screening_decision.py +98 -0
- circle/web3/developer_controlled_wallets/models/{get_token_id200_response.py → transactions.py} +11 -11
- circle/web3/developer_controlled_wallets/models/{get_transactions_response.py → transactions_data.py} +8 -8
- circle/web3/developer_controlled_wallets/models/{list_wallet_ballance200_response.py → validate_address.py} +13 -13
- circle/web3/developer_controlled_wallets/models/{validate_address_response.py → validate_address_data.py} +8 -8
- circle/web3/developer_controlled_wallets/models/wallet_response.py +87 -0
- circle/web3/developer_controlled_wallets/models/{wallet2_data.py → wallet_response_data.py} +8 -8
- circle/web3/developer_controlled_wallets/models/wallet_set_response.py +87 -0
- circle/web3/developer_controlled_wallets/models/{wallet_set2_data.py → wallet_set_response_data.py} +8 -8
- {circle_developer_controlled_wallets-1.1.1.dist-info → circle_developer_controlled_wallets-1.2.1.dist-info}/METADATA +7 -7
- circle_developer_controlled_wallets-1.2.1.dist-info/RECORD +104 -0
- {circle_developer_controlled_wallets-1.1.1.dist-info → circle_developer_controlled_wallets-1.2.1.dist-info}/WHEEL +1 -1
- circle/web3/developer_controlled_wallets/models/create_developer_transaction_accelerate200_response.py +0 -87
- circle/web3/developer_controlled_wallets/models/create_developer_transaction_transfer200_response.py +0 -87
- circle/web3/developer_controlled_wallets/models/create_transfer_estimate_fee200_response.py +0 -87
- circle/web3/developer_controlled_wallets/models/create_validate_address200_response.py +0 -87
- circle/web3/developer_controlled_wallets/models/sign_developer_message200_response.py +0 -87
- circle/web3/developer_controlled_wallets/models/sign_developer_typed_data200_response.py +0 -87
- circle_developer_controlled_wallets-1.1.1.dist-info/RECORD +0 -97
- {circle_developer_controlled_wallets-1.1.1.dist-info → circle_developer_controlled_wallets-1.2.1.dist-info}/top_level.txt +0 -0
|
@@ -0,0 +1,87 @@
|
|
|
1
|
+
# coding: utf-8
|
|
2
|
+
|
|
3
|
+
"""
|
|
4
|
+
The version of the OpenAPI document: 1.0
|
|
5
|
+
Generated by OpenAPI Generator (https://openapi-generator.tech)
|
|
6
|
+
|
|
7
|
+
Do not edit the class manually.
|
|
8
|
+
""" # noqa: E501
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
from __future__ import annotations
|
|
12
|
+
import pprint
|
|
13
|
+
import re # noqa: F401
|
|
14
|
+
import json
|
|
15
|
+
|
|
16
|
+
|
|
17
|
+
|
|
18
|
+
from pydantic import BaseModel, Field
|
|
19
|
+
from circle.web3.developer_controlled_wallets.models.sign_transaction_response_data import SignTransactionResponseData
|
|
20
|
+
|
|
21
|
+
class SignTransactionResponse(BaseModel):
|
|
22
|
+
"""
|
|
23
|
+
SignTransactionResponse
|
|
24
|
+
"""
|
|
25
|
+
data: SignTransactionResponseData = Field(...)
|
|
26
|
+
__properties = ["data"]
|
|
27
|
+
|
|
28
|
+
def __init__(self, **kwargs):
|
|
29
|
+
if "idempotencyKey" in self.__properties and not kwargs.get("idempotency_key"):
|
|
30
|
+
kwargs["idempotency_key"] = "#REFILL_PLACEHOLDER"
|
|
31
|
+
|
|
32
|
+
if "entitySecretCiphertext" in self.__properties and not kwargs.get("entity_secret_ciphertext"):
|
|
33
|
+
kwargs["entity_secret_ciphertext"] = "#REFILL_PLACEHOLDER"
|
|
34
|
+
super().__init__(**kwargs)
|
|
35
|
+
|
|
36
|
+
|
|
37
|
+
class Config:
|
|
38
|
+
"""Pydantic configuration"""
|
|
39
|
+
allow_population_by_field_name = True
|
|
40
|
+
validate_assignment = True
|
|
41
|
+
|
|
42
|
+
def to_str(self) -> str:
|
|
43
|
+
"""Returns the string representation of the model using alias"""
|
|
44
|
+
return pprint.pformat(self.dict(by_alias=True))
|
|
45
|
+
|
|
46
|
+
def to_json(self) -> str:
|
|
47
|
+
"""Returns the JSON representation of the model using alias"""
|
|
48
|
+
return json.dumps(self.to_dict())
|
|
49
|
+
|
|
50
|
+
@classmethod
|
|
51
|
+
def from_json(cls, json_str: str) -> SignTransactionResponse:
|
|
52
|
+
"""Create an instance of SignTransactionResponse from a JSON string"""
|
|
53
|
+
return cls.from_dict(json.loads(json_str))
|
|
54
|
+
|
|
55
|
+
def to_dict(self):
|
|
56
|
+
"""Returns the dictionary representation of the model using alias"""
|
|
57
|
+
_dict = self.dict(by_alias=True,
|
|
58
|
+
exclude={
|
|
59
|
+
},
|
|
60
|
+
exclude_none=True)
|
|
61
|
+
# override the default output from pydantic by calling `to_dict()` of data
|
|
62
|
+
if self.data:
|
|
63
|
+
_dict['data'] = self.data.to_dict()
|
|
64
|
+
return _dict
|
|
65
|
+
|
|
66
|
+
@classmethod
|
|
67
|
+
def from_dict(cls, obj: dict) -> SignTransactionResponse:
|
|
68
|
+
"""Create an instance of SignTransactionResponse from a dict"""
|
|
69
|
+
if obj is None:
|
|
70
|
+
return None
|
|
71
|
+
|
|
72
|
+
if not isinstance(obj, dict):
|
|
73
|
+
return SignTransactionResponse.parse_obj(obj)
|
|
74
|
+
|
|
75
|
+
# fill idempotency_key and ciphertext with placeholder for auto_fill
|
|
76
|
+
if "idempotencyKey" in cls.__properties and not obj.get("idempotencyKey"):
|
|
77
|
+
obj["idempotencyKey"] = "#REFILL_PLACEHOLDER"
|
|
78
|
+
|
|
79
|
+
if "entitySecretCiphertext" in cls.__properties and not obj.get("entitySecretCiphertext"):
|
|
80
|
+
obj["entitySecretCiphertext"] = "#REFILL_PLACEHOLDER"
|
|
81
|
+
|
|
82
|
+
_obj = SignTransactionResponse.parse_obj({
|
|
83
|
+
"data": SignTransactionResponseData.from_dict(obj.get("data")) if obj.get("data") is not None else None
|
|
84
|
+
})
|
|
85
|
+
return _obj
|
|
86
|
+
|
|
87
|
+
|
|
@@ -17,12 +17,13 @@ import json
|
|
|
17
17
|
|
|
18
18
|
from pydantic import BaseModel, Field, StrictStr
|
|
19
19
|
|
|
20
|
-
class
|
|
20
|
+
class SignTransactionResponseData(BaseModel):
|
|
21
21
|
"""
|
|
22
|
-
|
|
22
|
+
SignTransactionResponseData
|
|
23
23
|
"""
|
|
24
|
-
signature: StrictStr = Field(..., description="Signature is a
|
|
25
|
-
|
|
24
|
+
signature: StrictStr = Field(..., description="Signature is a base58 encoded 64 byte string for Solana.")
|
|
25
|
+
signed_transaction: StrictStr = Field(..., alias="signedTransaction", description="Signed transaction is a base64 encoded string for Solana.")
|
|
26
|
+
__properties = ["signature", "signedTransaction"]
|
|
26
27
|
|
|
27
28
|
def __init__(self, **kwargs):
|
|
28
29
|
if "idempotencyKey" in self.__properties and not kwargs.get("idempotency_key"):
|
|
@@ -47,8 +48,8 @@ class SignTypedDataForDeveloperResponse(BaseModel):
|
|
|
47
48
|
return json.dumps(self.to_dict())
|
|
48
49
|
|
|
49
50
|
@classmethod
|
|
50
|
-
def from_json(cls, json_str: str) ->
|
|
51
|
-
"""Create an instance of
|
|
51
|
+
def from_json(cls, json_str: str) -> SignTransactionResponseData:
|
|
52
|
+
"""Create an instance of SignTransactionResponseData from a JSON string"""
|
|
52
53
|
return cls.from_dict(json.loads(json_str))
|
|
53
54
|
|
|
54
55
|
def to_dict(self):
|
|
@@ -60,13 +61,13 @@ class SignTypedDataForDeveloperResponse(BaseModel):
|
|
|
60
61
|
return _dict
|
|
61
62
|
|
|
62
63
|
@classmethod
|
|
63
|
-
def from_dict(cls, obj: dict) ->
|
|
64
|
-
"""Create an instance of
|
|
64
|
+
def from_dict(cls, obj: dict) -> SignTransactionResponseData:
|
|
65
|
+
"""Create an instance of SignTransactionResponseData from a dict"""
|
|
65
66
|
if obj is None:
|
|
66
67
|
return None
|
|
67
68
|
|
|
68
69
|
if not isinstance(obj, dict):
|
|
69
|
-
return
|
|
70
|
+
return SignTransactionResponseData.parse_obj(obj)
|
|
70
71
|
|
|
71
72
|
# fill idempotency_key and ciphertext with placeholder for auto_fill
|
|
72
73
|
if "idempotencyKey" in cls.__properties and not obj.get("idempotencyKey"):
|
|
@@ -75,8 +76,9 @@ class SignTypedDataForDeveloperResponse(BaseModel):
|
|
|
75
76
|
if "entitySecretCiphertext" in cls.__properties and not obj.get("entitySecretCiphertext"):
|
|
76
77
|
obj["entitySecretCiphertext"] = "#REFILL_PLACEHOLDER"
|
|
77
78
|
|
|
78
|
-
_obj =
|
|
79
|
-
"signature": obj.get("signature")
|
|
79
|
+
_obj = SignTransactionResponseData.parse_obj({
|
|
80
|
+
"signature": obj.get("signature"),
|
|
81
|
+
"signed_transaction": obj.get("signedTransaction")
|
|
80
82
|
})
|
|
81
83
|
return _obj
|
|
82
84
|
|
|
@@ -17,11 +17,11 @@ import json
|
|
|
17
17
|
from typing import Optional, Union
|
|
18
18
|
from pydantic import BaseModel, Field, StrictBytes, StrictStr
|
|
19
19
|
|
|
20
|
-
class
|
|
20
|
+
class SignTypedDataRequest(BaseModel):
|
|
21
21
|
"""
|
|
22
|
-
|
|
22
|
+
SignTypedDataRequest
|
|
23
23
|
"""
|
|
24
|
-
wallet_id: StrictStr = Field(..., alias="walletId", description="
|
|
24
|
+
wallet_id: StrictStr = Field(..., alias="walletId", description="System-generated unique identifier of the resource.")
|
|
25
25
|
data: StrictStr = Field(..., description="A string represents the typed structured data in EIP-712")
|
|
26
26
|
memo: Optional[StrictStr] = Field(None, description="The human readable explanation for this sign action. Useful for presenting with extra information.")
|
|
27
27
|
entity_secret_ciphertext: Union[StrictBytes, StrictStr] = Field(..., alias="entitySecretCiphertext", description="A base64 string expression of the entity secret ciphertext. The entity secret should be encrypted by the entity public key. Circle mandates that the entity secret ciphertext is unique for each API request. ")
|
|
@@ -50,8 +50,8 @@ class SignTypedDataForDeveloperRequest(BaseModel):
|
|
|
50
50
|
return json.dumps(self.to_dict())
|
|
51
51
|
|
|
52
52
|
@classmethod
|
|
53
|
-
def from_json(cls, json_str: str) ->
|
|
54
|
-
"""Create an instance of
|
|
53
|
+
def from_json(cls, json_str: str) -> SignTypedDataRequest:
|
|
54
|
+
"""Create an instance of SignTypedDataRequest from a JSON string"""
|
|
55
55
|
return cls.from_dict(json.loads(json_str))
|
|
56
56
|
|
|
57
57
|
def to_dict(self):
|
|
@@ -63,13 +63,13 @@ class SignTypedDataForDeveloperRequest(BaseModel):
|
|
|
63
63
|
return _dict
|
|
64
64
|
|
|
65
65
|
@classmethod
|
|
66
|
-
def from_dict(cls, obj: dict) ->
|
|
67
|
-
"""Create an instance of
|
|
66
|
+
def from_dict(cls, obj: dict) -> SignTypedDataRequest:
|
|
67
|
+
"""Create an instance of SignTypedDataRequest from a dict"""
|
|
68
68
|
if obj is None:
|
|
69
69
|
return None
|
|
70
70
|
|
|
71
71
|
if not isinstance(obj, dict):
|
|
72
|
-
return
|
|
72
|
+
return SignTypedDataRequest.parse_obj(obj)
|
|
73
73
|
|
|
74
74
|
# fill idempotency_key and ciphertext with placeholder for auto_fill
|
|
75
75
|
if "idempotencyKey" in cls.__properties and not obj.get("idempotencyKey"):
|
|
@@ -78,7 +78,7 @@ class SignTypedDataForDeveloperRequest(BaseModel):
|
|
|
78
78
|
if "entitySecretCiphertext" in cls.__properties and not obj.get("entitySecretCiphertext"):
|
|
79
79
|
obj["entitySecretCiphertext"] = "#REFILL_PLACEHOLDER"
|
|
80
80
|
|
|
81
|
-
_obj =
|
|
81
|
+
_obj = SignTypedDataRequest.parse_obj({
|
|
82
82
|
"wallet_id": obj.get("walletId"),
|
|
83
83
|
"data": obj.get("data"),
|
|
84
84
|
"memo": obj.get("memo"),
|
|
@@ -14,15 +14,15 @@ import re # noqa: F401
|
|
|
14
14
|
import json
|
|
15
15
|
|
|
16
16
|
|
|
17
|
-
from typing import Optional
|
|
18
|
-
from pydantic import BaseModel
|
|
19
|
-
from circle.web3.developer_controlled_wallets.models.get_nfts_response import GetNftsResponse
|
|
20
17
|
|
|
21
|
-
|
|
18
|
+
from pydantic import BaseModel, Field
|
|
19
|
+
from circle.web3.developer_controlled_wallets.models.signature_response_data import SignatureResponseData
|
|
20
|
+
|
|
21
|
+
class SignatureResponse(BaseModel):
|
|
22
22
|
"""
|
|
23
|
-
|
|
23
|
+
SignatureResponse
|
|
24
24
|
"""
|
|
25
|
-
data:
|
|
25
|
+
data: SignatureResponseData = Field(...)
|
|
26
26
|
__properties = ["data"]
|
|
27
27
|
|
|
28
28
|
def __init__(self, **kwargs):
|
|
@@ -48,8 +48,8 @@ class ListWalletNfts200Response(BaseModel):
|
|
|
48
48
|
return json.dumps(self.to_dict())
|
|
49
49
|
|
|
50
50
|
@classmethod
|
|
51
|
-
def from_json(cls, json_str: str) ->
|
|
52
|
-
"""Create an instance of
|
|
51
|
+
def from_json(cls, json_str: str) -> SignatureResponse:
|
|
52
|
+
"""Create an instance of SignatureResponse from a JSON string"""
|
|
53
53
|
return cls.from_dict(json.loads(json_str))
|
|
54
54
|
|
|
55
55
|
def to_dict(self):
|
|
@@ -64,13 +64,13 @@ class ListWalletNfts200Response(BaseModel):
|
|
|
64
64
|
return _dict
|
|
65
65
|
|
|
66
66
|
@classmethod
|
|
67
|
-
def from_dict(cls, obj: dict) ->
|
|
68
|
-
"""Create an instance of
|
|
67
|
+
def from_dict(cls, obj: dict) -> SignatureResponse:
|
|
68
|
+
"""Create an instance of SignatureResponse from a dict"""
|
|
69
69
|
if obj is None:
|
|
70
70
|
return None
|
|
71
71
|
|
|
72
72
|
if not isinstance(obj, dict):
|
|
73
|
-
return
|
|
73
|
+
return SignatureResponse.parse_obj(obj)
|
|
74
74
|
|
|
75
75
|
# fill idempotency_key and ciphertext with placeholder for auto_fill
|
|
76
76
|
if "idempotencyKey" in cls.__properties and not obj.get("idempotencyKey"):
|
|
@@ -79,8 +79,8 @@ class ListWalletNfts200Response(BaseModel):
|
|
|
79
79
|
if "entitySecretCiphertext" in cls.__properties and not obj.get("entitySecretCiphertext"):
|
|
80
80
|
obj["entitySecretCiphertext"] = "#REFILL_PLACEHOLDER"
|
|
81
81
|
|
|
82
|
-
_obj =
|
|
83
|
-
"data":
|
|
82
|
+
_obj = SignatureResponse.parse_obj({
|
|
83
|
+
"data": SignatureResponseData.from_dict(obj.get("data")) if obj.get("data") is not None else None
|
|
84
84
|
})
|
|
85
85
|
return _obj
|
|
86
86
|
|
|
@@ -17,9 +17,9 @@ import json
|
|
|
17
17
|
|
|
18
18
|
from pydantic import BaseModel, Field, StrictStr
|
|
19
19
|
|
|
20
|
-
class
|
|
20
|
+
class SignatureResponseData(BaseModel):
|
|
21
21
|
"""
|
|
22
|
-
|
|
22
|
+
SignatureResponseData
|
|
23
23
|
"""
|
|
24
24
|
signature: StrictStr = Field(..., description="Signature is a hex encoded 65 byte array starting with 0x.")
|
|
25
25
|
__properties = ["signature"]
|
|
@@ -47,8 +47,8 @@ class SignMessageForDeveloperResponse(BaseModel):
|
|
|
47
47
|
return json.dumps(self.to_dict())
|
|
48
48
|
|
|
49
49
|
@classmethod
|
|
50
|
-
def from_json(cls, json_str: str) ->
|
|
51
|
-
"""Create an instance of
|
|
50
|
+
def from_json(cls, json_str: str) -> SignatureResponseData:
|
|
51
|
+
"""Create an instance of SignatureResponseData from a JSON string"""
|
|
52
52
|
return cls.from_dict(json.loads(json_str))
|
|
53
53
|
|
|
54
54
|
def to_dict(self):
|
|
@@ -60,13 +60,13 @@ class SignMessageForDeveloperResponse(BaseModel):
|
|
|
60
60
|
return _dict
|
|
61
61
|
|
|
62
62
|
@classmethod
|
|
63
|
-
def from_dict(cls, obj: dict) ->
|
|
64
|
-
"""Create an instance of
|
|
63
|
+
def from_dict(cls, obj: dict) -> SignatureResponseData:
|
|
64
|
+
"""Create an instance of SignatureResponseData from a dict"""
|
|
65
65
|
if obj is None:
|
|
66
66
|
return None
|
|
67
67
|
|
|
68
68
|
if not isinstance(obj, dict):
|
|
69
|
-
return
|
|
69
|
+
return SignatureResponseData.parse_obj(obj)
|
|
70
70
|
|
|
71
71
|
# fill idempotency_key and ciphertext with placeholder for auto_fill
|
|
72
72
|
if "idempotencyKey" in cls.__properties and not obj.get("idempotencyKey"):
|
|
@@ -75,7 +75,7 @@ class SignMessageForDeveloperResponse(BaseModel):
|
|
|
75
75
|
if "entitySecretCiphertext" in cls.__properties and not obj.get("entitySecretCiphertext"):
|
|
76
76
|
obj["entitySecretCiphertext"] = "#REFILL_PLACEHOLDER"
|
|
77
77
|
|
|
78
|
-
_obj =
|
|
78
|
+
_obj = SignatureResponseData.parse_obj({
|
|
79
79
|
"signature": obj.get("signature")
|
|
80
80
|
})
|
|
81
81
|
return _obj
|
|
@@ -0,0 +1,103 @@
|
|
|
1
|
+
# coding: utf-8
|
|
2
|
+
|
|
3
|
+
"""
|
|
4
|
+
The version of the OpenAPI document: 1.0
|
|
5
|
+
Generated by OpenAPI Generator (https://openapi-generator.tech)
|
|
6
|
+
|
|
7
|
+
Do not edit the class manually.
|
|
8
|
+
""" # noqa: E501
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
from __future__ import annotations
|
|
12
|
+
import pprint
|
|
13
|
+
import re # noqa: F401
|
|
14
|
+
import json
|
|
15
|
+
|
|
16
|
+
from datetime import datetime
|
|
17
|
+
from typing import Optional
|
|
18
|
+
from pydantic import BaseModel, Field, StrictBool, StrictInt, StrictStr
|
|
19
|
+
from circle.web3.developer_controlled_wallets.models.blockchain import Blockchain
|
|
20
|
+
from circle.web3.developer_controlled_wallets.models.token_standard import TokenStandard
|
|
21
|
+
|
|
22
|
+
class Token(BaseModel):
|
|
23
|
+
"""
|
|
24
|
+
Token
|
|
25
|
+
"""
|
|
26
|
+
id: StrictStr = Field(..., description="System-generated unique identifier of the resource.")
|
|
27
|
+
name: Optional[StrictStr] = Field(None, description="Blockchain name of the specified token.")
|
|
28
|
+
standard: Optional[TokenStandard] = None
|
|
29
|
+
blockchain: Blockchain = Field(...)
|
|
30
|
+
decimals: Optional[StrictInt] = Field(None, description="Number of decimal places shown in the token amount.")
|
|
31
|
+
is_native: StrictBool = Field(..., alias="isNative", description="Defines if the token is a native token of the specified blockchain. If TRUE, the token is a native token.")
|
|
32
|
+
symbol: Optional[StrictStr] = Field(None, description="Blockchain symbol of the specified token.")
|
|
33
|
+
token_address: Optional[StrictStr] = Field(None, alias="tokenAddress", description="Blockchain address of the specified token.")
|
|
34
|
+
update_date: datetime = Field(..., alias="updateDate", description="Date and time the resource was last updated, in ISO-8601 UTC format.")
|
|
35
|
+
create_date: datetime = Field(..., alias="createDate", description="Date and time the resource was created, in ISO-8601 UTC format.")
|
|
36
|
+
__properties = ["id", "name", "standard", "blockchain", "decimals", "isNative", "symbol", "tokenAddress", "updateDate", "createDate"]
|
|
37
|
+
|
|
38
|
+
def __init__(self, **kwargs):
|
|
39
|
+
if "idempotencyKey" in self.__properties and not kwargs.get("idempotency_key"):
|
|
40
|
+
kwargs["idempotency_key"] = "#REFILL_PLACEHOLDER"
|
|
41
|
+
|
|
42
|
+
if "entitySecretCiphertext" in self.__properties and not kwargs.get("entity_secret_ciphertext"):
|
|
43
|
+
kwargs["entity_secret_ciphertext"] = "#REFILL_PLACEHOLDER"
|
|
44
|
+
super().__init__(**kwargs)
|
|
45
|
+
|
|
46
|
+
|
|
47
|
+
class Config:
|
|
48
|
+
"""Pydantic configuration"""
|
|
49
|
+
allow_population_by_field_name = True
|
|
50
|
+
validate_assignment = True
|
|
51
|
+
|
|
52
|
+
def to_str(self) -> str:
|
|
53
|
+
"""Returns the string representation of the model using alias"""
|
|
54
|
+
return pprint.pformat(self.dict(by_alias=True))
|
|
55
|
+
|
|
56
|
+
def to_json(self) -> str:
|
|
57
|
+
"""Returns the JSON representation of the model using alias"""
|
|
58
|
+
return json.dumps(self.to_dict())
|
|
59
|
+
|
|
60
|
+
@classmethod
|
|
61
|
+
def from_json(cls, json_str: str) -> Token:
|
|
62
|
+
"""Create an instance of Token from a JSON string"""
|
|
63
|
+
return cls.from_dict(json.loads(json_str))
|
|
64
|
+
|
|
65
|
+
def to_dict(self):
|
|
66
|
+
"""Returns the dictionary representation of the model using alias"""
|
|
67
|
+
_dict = self.dict(by_alias=True,
|
|
68
|
+
exclude={
|
|
69
|
+
},
|
|
70
|
+
exclude_none=True)
|
|
71
|
+
return _dict
|
|
72
|
+
|
|
73
|
+
@classmethod
|
|
74
|
+
def from_dict(cls, obj: dict) -> Token:
|
|
75
|
+
"""Create an instance of Token from a dict"""
|
|
76
|
+
if obj is None:
|
|
77
|
+
return None
|
|
78
|
+
|
|
79
|
+
if not isinstance(obj, dict):
|
|
80
|
+
return Token.parse_obj(obj)
|
|
81
|
+
|
|
82
|
+
# fill idempotency_key and ciphertext with placeholder for auto_fill
|
|
83
|
+
if "idempotencyKey" in cls.__properties and not obj.get("idempotencyKey"):
|
|
84
|
+
obj["idempotencyKey"] = "#REFILL_PLACEHOLDER"
|
|
85
|
+
|
|
86
|
+
if "entitySecretCiphertext" in cls.__properties and not obj.get("entitySecretCiphertext"):
|
|
87
|
+
obj["entitySecretCiphertext"] = "#REFILL_PLACEHOLDER"
|
|
88
|
+
|
|
89
|
+
_obj = Token.parse_obj({
|
|
90
|
+
"id": obj.get("id"),
|
|
91
|
+
"name": obj.get("name"),
|
|
92
|
+
"standard": obj.get("standard"),
|
|
93
|
+
"blockchain": obj.get("blockchain"),
|
|
94
|
+
"decimals": obj.get("decimals"),
|
|
95
|
+
"is_native": obj.get("isNative"),
|
|
96
|
+
"symbol": obj.get("symbol"),
|
|
97
|
+
"token_address": obj.get("tokenAddress"),
|
|
98
|
+
"update_date": obj.get("updateDate"),
|
|
99
|
+
"create_date": obj.get("createDate")
|
|
100
|
+
})
|
|
101
|
+
return _obj
|
|
102
|
+
|
|
103
|
+
|
|
@@ -13,27 +13,17 @@ import pprint
|
|
|
13
13
|
import re # noqa: F401
|
|
14
14
|
import json
|
|
15
15
|
|
|
16
|
-
|
|
16
|
+
|
|
17
17
|
from typing import Optional
|
|
18
|
-
from pydantic import BaseModel
|
|
19
|
-
from circle.web3.developer_controlled_wallets.models.
|
|
20
|
-
from circle.web3.developer_controlled_wallets.models.token_standard import TokenStandard
|
|
18
|
+
from pydantic import BaseModel
|
|
19
|
+
from circle.web3.developer_controlled_wallets.models.token_response_data import TokenResponseData
|
|
21
20
|
|
|
22
21
|
class TokenResponse(BaseModel):
|
|
23
22
|
"""
|
|
24
23
|
TokenResponse
|
|
25
24
|
"""
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
standard: Optional[TokenStandard] = None
|
|
29
|
-
blockchain: Blockchain = Field(...)
|
|
30
|
-
decimals: Optional[StrictInt] = Field(None, description="Number of decimal places shown in the token amount.")
|
|
31
|
-
is_native: StrictBool = Field(..., alias="isNative", description="Defines if the token is a native token of the specified blockchain. If TRUE, the token is a native token.")
|
|
32
|
-
symbol: Optional[StrictStr] = Field(None, description="Blockchain symbol of the specified token.")
|
|
33
|
-
token_address: Optional[StrictStr] = Field(None, alias="tokenAddress", description="Blockchain address of the specified token.")
|
|
34
|
-
update_date: datetime = Field(..., alias="updateDate", description="Date and time the resource was last updated, in ISO-8601 UTC format.")
|
|
35
|
-
create_date: datetime = Field(..., alias="createDate", description="Date and time the resource was created, in ISO-8601 UTC format.")
|
|
36
|
-
__properties = ["id", "name", "standard", "blockchain", "decimals", "isNative", "symbol", "tokenAddress", "updateDate", "createDate"]
|
|
25
|
+
data: Optional[TokenResponseData] = None
|
|
26
|
+
__properties = ["data"]
|
|
37
27
|
|
|
38
28
|
def __init__(self, **kwargs):
|
|
39
29
|
if "idempotencyKey" in self.__properties and not kwargs.get("idempotency_key"):
|
|
@@ -68,6 +58,9 @@ class TokenResponse(BaseModel):
|
|
|
68
58
|
exclude={
|
|
69
59
|
},
|
|
70
60
|
exclude_none=True)
|
|
61
|
+
# override the default output from pydantic by calling `to_dict()` of data
|
|
62
|
+
if self.data:
|
|
63
|
+
_dict['data'] = self.data.to_dict()
|
|
71
64
|
return _dict
|
|
72
65
|
|
|
73
66
|
@classmethod
|
|
@@ -87,16 +80,7 @@ class TokenResponse(BaseModel):
|
|
|
87
80
|
obj["entitySecretCiphertext"] = "#REFILL_PLACEHOLDER"
|
|
88
81
|
|
|
89
82
|
_obj = TokenResponse.parse_obj({
|
|
90
|
-
"
|
|
91
|
-
"name": obj.get("name"),
|
|
92
|
-
"standard": obj.get("standard"),
|
|
93
|
-
"blockchain": obj.get("blockchain"),
|
|
94
|
-
"decimals": obj.get("decimals"),
|
|
95
|
-
"is_native": obj.get("isNative"),
|
|
96
|
-
"symbol": obj.get("symbol"),
|
|
97
|
-
"token_address": obj.get("tokenAddress"),
|
|
98
|
-
"update_date": obj.get("updateDate"),
|
|
99
|
-
"create_date": obj.get("createDate")
|
|
83
|
+
"data": TokenResponseData.from_dict(obj.get("data")) if obj.get("data") is not None else None
|
|
100
84
|
})
|
|
101
85
|
return _obj
|
|
102
86
|
|
|
@@ -16,13 +16,13 @@ import json
|
|
|
16
16
|
|
|
17
17
|
from typing import Optional
|
|
18
18
|
from pydantic import BaseModel
|
|
19
|
-
from circle.web3.developer_controlled_wallets.models.
|
|
19
|
+
from circle.web3.developer_controlled_wallets.models.token import Token
|
|
20
20
|
|
|
21
|
-
class
|
|
21
|
+
class TokenResponseData(BaseModel):
|
|
22
22
|
"""
|
|
23
|
-
|
|
23
|
+
TokenResponseData
|
|
24
24
|
"""
|
|
25
|
-
token: Optional[
|
|
25
|
+
token: Optional[Token] = None
|
|
26
26
|
__properties = ["token"]
|
|
27
27
|
|
|
28
28
|
def __init__(self, **kwargs):
|
|
@@ -48,8 +48,8 @@ class GetTokenByIDResponse(BaseModel):
|
|
|
48
48
|
return json.dumps(self.to_dict())
|
|
49
49
|
|
|
50
50
|
@classmethod
|
|
51
|
-
def from_json(cls, json_str: str) ->
|
|
52
|
-
"""Create an instance of
|
|
51
|
+
def from_json(cls, json_str: str) -> TokenResponseData:
|
|
52
|
+
"""Create an instance of TokenResponseData from a JSON string"""
|
|
53
53
|
return cls.from_dict(json.loads(json_str))
|
|
54
54
|
|
|
55
55
|
def to_dict(self):
|
|
@@ -64,13 +64,13 @@ class GetTokenByIDResponse(BaseModel):
|
|
|
64
64
|
return _dict
|
|
65
65
|
|
|
66
66
|
@classmethod
|
|
67
|
-
def from_dict(cls, obj: dict) ->
|
|
68
|
-
"""Create an instance of
|
|
67
|
+
def from_dict(cls, obj: dict) -> TokenResponseData:
|
|
68
|
+
"""Create an instance of TokenResponseData from a dict"""
|
|
69
69
|
if obj is None:
|
|
70
70
|
return None
|
|
71
71
|
|
|
72
72
|
if not isinstance(obj, dict):
|
|
73
|
-
return
|
|
73
|
+
return TokenResponseData.parse_obj(obj)
|
|
74
74
|
|
|
75
75
|
# fill idempotency_key and ciphertext with placeholder for auto_fill
|
|
76
76
|
if "idempotencyKey" in cls.__properties and not obj.get("idempotencyKey"):
|
|
@@ -79,8 +79,8 @@ class GetTokenByIDResponse(BaseModel):
|
|
|
79
79
|
if "entitySecretCiphertext" in cls.__properties and not obj.get("entitySecretCiphertext"):
|
|
80
80
|
obj["entitySecretCiphertext"] = "#REFILL_PLACEHOLDER"
|
|
81
81
|
|
|
82
|
-
_obj =
|
|
83
|
-
"token":
|
|
82
|
+
_obj = TokenResponseData.parse_obj({
|
|
83
|
+
"token": Token.from_dict(obj.get("token")) if obj.get("token") is not None else None
|
|
84
84
|
})
|
|
85
85
|
return _obj
|
|
86
86
|
|
|
@@ -28,6 +28,12 @@ class TokenStandard(str, Enum):
|
|
|
28
28
|
ERC20 = 'ERC20'
|
|
29
29
|
ERC721 = 'ERC721'
|
|
30
30
|
ERC1155 = 'ERC1155'
|
|
31
|
+
FUNGIBLE = 'Fungible'
|
|
32
|
+
FUNGIBLEASSET = 'FungibleAsset'
|
|
33
|
+
NONFUNGIBLE = 'NonFungible'
|
|
34
|
+
NONFUNGIBLEEDITION = 'NonFungibleEdition'
|
|
35
|
+
PROGRAMMABLENONFUNGIBLE = 'ProgrammableNonFungible'
|
|
36
|
+
PROGRAMMABLENONFUNGIBLEEDITION = 'ProgrammableNonFungibleEdition'
|
|
31
37
|
|
|
32
38
|
@classmethod
|
|
33
39
|
def from_json(cls, json_str: str) -> TokenStandard:
|
|
@@ -19,9 +19,10 @@ from pydantic import BaseModel, Field, StrictInt, StrictStr, conlist, constr
|
|
|
19
19
|
from circle.web3.developer_controlled_wallets.models.abi_parameters_inner import AbiParametersInner
|
|
20
20
|
from circle.web3.developer_controlled_wallets.models.blockchain import Blockchain
|
|
21
21
|
from circle.web3.developer_controlled_wallets.models.custody_type import CustodyType
|
|
22
|
-
from circle.web3.developer_controlled_wallets.models.estimated_transaction_fee import EstimatedTransactionFee
|
|
23
22
|
from circle.web3.developer_controlled_wallets.models.fee_level import FeeLevel
|
|
24
23
|
from circle.web3.developer_controlled_wallets.models.operation import Operation
|
|
24
|
+
from circle.web3.developer_controlled_wallets.models.transaction_fee import TransactionFee
|
|
25
|
+
from circle.web3.developer_controlled_wallets.models.transaction_screening_decision import TransactionScreeningDecision
|
|
25
26
|
from circle.web3.developer_controlled_wallets.models.transaction_state import TransactionState
|
|
26
27
|
from circle.web3.developer_controlled_wallets.models.transaction_type import TransactionType
|
|
27
28
|
|
|
@@ -43,7 +44,7 @@ class Transaction(BaseModel):
|
|
|
43
44
|
destination_address: Optional[StrictStr] = Field(None, alias="destinationAddress", description="The destination blockchain address for the transaction.")
|
|
44
45
|
error_reason: Optional[StrictStr] = Field(None, alias="errorReason", description="Description of the error. Only present for transactions in `FAILED` state.")
|
|
45
46
|
error_details: Optional[StrictStr] = Field(None, alias="errorDetails", description="Additional detail associated with the corresponding transaction's error reason")
|
|
46
|
-
estimated_fee: Optional[
|
|
47
|
+
estimated_fee: Optional[TransactionFee] = Field(None, alias="estimatedFee")
|
|
47
48
|
fee_level: Optional[FeeLevel] = Field(None, alias="feeLevel")
|
|
48
49
|
first_confirm_date: Optional[datetime] = Field(None, alias="firstConfirmDate", description="Date the transaction was first confirmed in a block. ISO-8601 UTC date/time.")
|
|
49
50
|
network_fee: Optional[StrictStr] = Field(None, alias="networkFee", description="Gas fee, in native token, paid to the network for the transaction.")
|
|
@@ -51,7 +52,7 @@ class Transaction(BaseModel):
|
|
|
51
52
|
nfts: Optional[conlist(StrictStr)] = Field(None, description="List of Nfts, in JSON string format, associated with the transaction.")
|
|
52
53
|
operation: Optional[Operation] = None
|
|
53
54
|
ref_id: Optional[StrictStr] = Field(None, alias="refId", description="Optional reference or description used to identify the transaction.")
|
|
54
|
-
source_address: Optional[StrictStr] = Field(None, alias="sourceAddress", description="The source
|
|
55
|
+
source_address: Optional[StrictStr] = Field(None, alias="sourceAddress", description="The source address of the transaction.")
|
|
55
56
|
state: TransactionState = Field(...)
|
|
56
57
|
token_id: Optional[StrictStr] = Field(None, alias="tokenId", description="System generated identifier of the token. Excluded with `tokenAddress` and `tokenBlockchain`.")
|
|
57
58
|
transaction_type: TransactionType = Field(..., alias="transactionType")
|
|
@@ -59,7 +60,8 @@ class Transaction(BaseModel):
|
|
|
59
60
|
update_date: datetime = Field(..., alias="updateDate", description="Date and time the resource was last updated, in ISO-8601 UTC format.")
|
|
60
61
|
user_id: Optional[constr(strict=True, max_length=50, min_length=5)] = Field(None, alias="userId", description="Unique system generated identifier for the user.")
|
|
61
62
|
wallet_id: Optional[StrictStr] = Field(None, alias="walletId", description="Unique system generated identifier of the wallet. Required when source Address and blockchain is not provided. Mutually exclusive. For contract deploys this wallet ID will be used as the source.")
|
|
62
|
-
|
|
63
|
+
transaction_screening_evaluation: Optional[TransactionScreeningDecision] = Field(None, alias="transactionScreeningEvaluation")
|
|
64
|
+
__properties = ["id", "abiFunctionSignature", "abiParameters", "amounts", "amountInUSD", "blockHash", "blockHeight", "blockchain", "contractAddress", "createDate", "custodyType", "destinationAddress", "errorReason", "errorDetails", "estimatedFee", "feeLevel", "firstConfirmDate", "networkFee", "networkFeeInUSD", "nfts", "operation", "refId", "sourceAddress", "state", "tokenId", "transactionType", "txHash", "updateDate", "userId", "walletId", "transactionScreeningEvaluation"]
|
|
63
65
|
|
|
64
66
|
def __init__(self, **kwargs):
|
|
65
67
|
if "idempotencyKey" in self.__properties and not kwargs.get("idempotency_key"):
|
|
@@ -104,6 +106,9 @@ class Transaction(BaseModel):
|
|
|
104
106
|
# override the default output from pydantic by calling `to_dict()` of estimated_fee
|
|
105
107
|
if self.estimated_fee:
|
|
106
108
|
_dict['estimatedFee'] = self.estimated_fee.to_dict()
|
|
109
|
+
# override the default output from pydantic by calling `to_dict()` of transaction_screening_evaluation
|
|
110
|
+
if self.transaction_screening_evaluation:
|
|
111
|
+
_dict['transactionScreeningEvaluation'] = self.transaction_screening_evaluation.to_dict()
|
|
107
112
|
return _dict
|
|
108
113
|
|
|
109
114
|
@classmethod
|
|
@@ -137,7 +142,7 @@ class Transaction(BaseModel):
|
|
|
137
142
|
"destination_address": obj.get("destinationAddress"),
|
|
138
143
|
"error_reason": obj.get("errorReason"),
|
|
139
144
|
"error_details": obj.get("errorDetails"),
|
|
140
|
-
"estimated_fee":
|
|
145
|
+
"estimated_fee": TransactionFee.from_dict(obj.get("estimatedFee")) if obj.get("estimatedFee") is not None else None,
|
|
141
146
|
"fee_level": obj.get("feeLevel"),
|
|
142
147
|
"first_confirm_date": obj.get("firstConfirmDate"),
|
|
143
148
|
"network_fee": obj.get("networkFee"),
|
|
@@ -152,7 +157,8 @@ class Transaction(BaseModel):
|
|
|
152
157
|
"tx_hash": obj.get("txHash"),
|
|
153
158
|
"update_date": obj.get("updateDate"),
|
|
154
159
|
"user_id": obj.get("userId"),
|
|
155
|
-
"wallet_id": obj.get("walletId")
|
|
160
|
+
"wallet_id": obj.get("walletId"),
|
|
161
|
+
"transaction_screening_evaluation": TransactionScreeningDecision.from_dict(obj.get("transactionScreeningEvaluation")) if obj.get("transactionScreeningEvaluation") is not None else None
|
|
156
162
|
})
|
|
157
163
|
return _obj
|
|
158
164
|
|