Documentation
¶
Index ¶
- Constants
- Variables
- type Client
- func (c *Client) AbortTx(txId string) (resp []byte, err error)
- func (c *Client) ApproveTx(txId string) (resp []byte, err error)
- func (c *Client) EvmSignMessage(vaultId string, chain string, data string, signType string, note ...string) (resp *EvmSignResp, err error)
- func (c *Client) EvmTransactByBase64Data(vaultId string, chain string, gasOps EvmGasOps, to string, amount *big.Int, ...) (resp *EvmTransactResp, err error)
- func (c *Client) EvmTransactByData(vaultId string, chain string, gasOps EvmGasOps, to string, amount *big.Int, ...) (resp *EvmTransactResp, err error)
- func (c *Client) EvmTransactByName(vaultId string, chain string, gasOps EvmGasOps, to string, amount *big.Int, ...) (resp *EvmTransactResp, err error)
- func (c *Client) EvmTransferErc20(vaultId string, chain string, tokenAddr string, gasOps EvmGasOps, ...) (resp *EvmTransactResp, err error)
- func (c *Client) EvmTransferErc721(vaultId string, chain string, tokenAddr string, gasOps EvmGasOps, ...) (resp *EvmTransactResp, err error)
- func (c *Client) EvmTransferErc1155(vaultId string, chain string, tokenAddr string, gasOps EvmGasOps, ...) (resp *EvmTransactResp, err error)
- func (c *Client) EvmTransferNative(vaultId string, chain string, gasOps EvmGasOps, amount *big.Int, to string, ...) (resp *EvmTransactResp, err error)
- func (c *Client) GetTransactionEvmSign(id string) (*EvmMessageResp, error)
- func (c *Client) GetTransactionEvmTx(id string) (*EvmTxResp, error)
- func (c *Client) ListChains() (*ListChainResponse, error)
- func (c *Client) ListVaults() (resp *ListVaultsResp, err error)
- func (c *Client) ReleaseTx(txId string, releaseType string) (resp *EvmTransactResp, err error)
- func (c *Client) SolanaTransferNative(vaultId string, amount *big.Int, to string, note ...string) (resp *SolanaTransactResp, err error)
- func (c *Client) SolanaTransferSpl(vaultId string, tokenAddr string, amount *big.Int, to string, note ...string) (resp *SolanaTransactResp, err error)
- type ClientJson
- type EvmGasOps
- type EvmMessageResp
- type EvmRawTransactReq
- type EvmSignRequest
- type EvmSignResp
- type EvmTransactResp
- type EvmTransferReq
- type EvmTxResp
- type ListChainResponse
- type ListVaultsResp
- type SolanaTransactResp
- type SolanaTransferReq
Constants ¶
const ( CreateTransactionPath = "/api/v1/transactions" ApproveTransactionPath = "/api/v1/transactions/%s/approve" AbortTransactionPath = "/api/v1/transactions/%s/abort" ReleaseTransactionPath = "/api/v1/transactions/%s/release" ListChainsPath = "/api/v1/blockchains" GetTransactionPath = "/api/v1/transactions/%s" ListTransactionPath = "/api/v1/transactions" ListVaultsPath = "/api/v1/vaults" )
const ( ArbitrumMainnet = "evm_arbitrum_mainnet" AvalancheCChain = "evm_avalanche_chain" BaseMainnet = "evm_base_mainnet" BitcoinMainnet = "bitcoin_mainnet" BitcoinTestnet = "bitcoin_testnet" BscMainnet = "evm_bsc_mainnet" CantoMainnet = "evm_canto_mainnet" ConfluxESpace = "evm_conflux_mainnet" CosmosMainnet = "cosmos_cosmoshub-4" CosmosDydxNet = "cosmos_dydx-mainnet-1" CosmosDydxTest = "cosmos_dydx-testnet-4" SepoliaTestnet = "evm_ethereum_sepolia" EthereumMainnet = "ethereum_mainnet" SolanaMainnet = "solana_mainnet" )
const ( ModeByFunctionName = "full_details" ModeByHexData = "hex" ModeByBase64Data = "base64" )
const ( SignPersonal = "personal_message_type" SignTyped = "typed_message_type" )
const ( ReleaseCancel = "cancel" ReleaseAccelerate = "accelerate" )
const ( StatusWaitingForApproval = "waiting_for_approval" StatusApproved = "approved" StatusPushedToBlockchain = "pushed_to_blockchain" StatusCompleted = "completed" StatusReverted = "reverted" StatusStuck = "stuck" StatusAborted = "aborted" )
const DefaultApiEndpoint = "https://api.fordefi.com"
const MaxRepr = -1
Variables ¶
var OnChainStatuses = map[string]bool{ StatusPushedToBlockchain: true, StatusCompleted: true, StatusReverted: true, }
Functions ¶
This section is empty.
Types ¶
type Client ¶
type Client struct {
Host string
Token string
EcdsaKey ecdsa.PrivateKey
}
func New ¶
func New(clientConfig ClientJson) (*Client, error)
func NewFromEnv ¶
func (*Client) AbortTx ¶
AbortTx abort transaction. @param txId: transaction id(fordefi uuid). @return resp: response body can be nil if err is nil(http204).
func (*Client) ApproveTx ¶
ApproveTx approve transaction. @param txId: transaction id(fordefi uuid). @return resp: response body can be nil if err is nil(http204).
func (*Client) EvmSignMessage ¶
func (c *Client) EvmSignMessage(vaultId string, chain string, data string, signType string, note ...string) (resp *EvmSignResp, err error)
EvmSignMessage sign message using EIP191 personal sign or EIP712 typed sign. @param vaultId: vault id. @param chain: chain name. @param data: message data. @param signType: sign type, `SignPersonal` or `SignTyped`. @param note: note.
func (*Client) EvmTransactByBase64Data ¶
func (c *Client) EvmTransactByBase64Data(vaultId string, chain string, gasOps EvmGasOps, to string, amount *big.Int, data string, note ...string) (resp *EvmTransactResp, err error)
EvmTransactByBase64Data using base64 encoded data to call contract function. @param vaultId: vault id. @param chain: chain name. @param gasOps: gas options. @param to: tx to address. @param amount: value to transfer @param data: base64 encoded data. @param note: note.
func (*Client) EvmTransactByData ¶
func (c *Client) EvmTransactByData(vaultId string, chain string, gasOps EvmGasOps, to string, amount *big.Int, data string, note ...string) (resp *EvmTransactResp, err error)
EvmTransactByData using raw data to call contract function. @param vaultId: vault id. @param chain: chain name. @param gasOps: gas options. @param to: tx to address. @param amount: value to transfer @param data: raw data. @param note: note.
func (*Client) EvmTransactByName ¶
func (c *Client) EvmTransactByName(vaultId string, chain string, gasOps EvmGasOps, to string, amount *big.Int, fnName string, args []string, note ...string) (resp *EvmTransactResp, err error)
EvmTransactByName using function name and args to call contract function. @param vaultId: vault id. @param chain: chain name. @param gasOps: gas options. @param to: tx to address. @param amount: value to transfer @param fnName: function name. @param args: function args, in `["name1:value1", "name2:value2"]` format. @param note: note.
func (*Client) EvmTransferErc20 ¶
func (c *Client) EvmTransferErc20(vaultId string, chain string, tokenAddr string, gasOps EvmGasOps, amount *big.Int, to string, note ...string) (resp *EvmTransactResp, err error)
EvmTransferErc20 transfer erc20 token on evm chains. @param vaultId: vault id. @param chain: chain name. @param tokenAddr: gas options. @param gasOps: gas options. @param amount: amount to transfer, pass -1 to transfer max.
func (*Client) EvmTransferErc721 ¶
func (c *Client) EvmTransferErc721(vaultId string, chain string, tokenAddr string, gasOps EvmGasOps, tokenId *big.Int, to string, note ...string) (resp *EvmTransactResp, err error)
EvmTransferErc721 transfer erc721 token on evm chains. @param vaultId: vault id. @param chain: chain name. @param tokenAddr: gas options. @param gasOps: gas options. @param tokenId: token id to transfer.
func (*Client) EvmTransferErc1155 ¶
func (c *Client) EvmTransferErc1155(vaultId string, chain string, tokenAddr string, gasOps EvmGasOps, tokenId *big.Int, to string, note ...string) (resp *EvmTransactResp, err error)
EvmTransferErc1155 transfer erc1155 token on evm chains. @param vaultId: vault id. @param chain: chain name. @param tokenAddr: gas options. @param gasOps: gas options. @param tokenId: token id to transfer.
func (*Client) EvmTransferNative ¶
func (c *Client) EvmTransferNative(vaultId string, chain string, gasOps EvmGasOps, amount *big.Int, to string, note ...string) (resp *EvmTransactResp, err error)
EvmTransferNative transfer native token on evm chains. @param vaultId: vault id. @param chain: chain name. @param gasOps: gas options. @param amount: amount to transfer, pass -1 to tran.
func (*Client) GetTransactionEvmSign ¶
func (c *Client) GetTransactionEvmSign(id string) (*EvmMessageResp, error)
func (*Client) GetTransactionEvmTx ¶
func (*Client) ListChains ¶
func (c *Client) ListChains() (*ListChainResponse, error)
func (*Client) ListVaults ¶
func (c *Client) ListVaults() (resp *ListVaultsResp, err error)
func (*Client) ReleaseTx ¶
func (c *Client) ReleaseTx(txId string, releaseType string) (resp *EvmTransactResp, err error)
ReleaseTx release transaction. @param txId: transaction id(fordefi uuid). @param releaseType: release type, `ReleaseCancel` or `ReleaseAccelerate`. @return resp: response same as EvmTransactResp.
func (*Client) SolanaTransferNative ¶
func (c *Client) SolanaTransferNative(vaultId string, amount *big.Int, to string, note ...string) (resp *SolanaTransactResp, err error)
SolanaTransferNative transfer native token on solana chains. @param vaultId: vault id. @param amount: amount to transfer, pass -1 to transfer max. @param to: to address.
func (*Client) SolanaTransferSpl ¶
func (c *Client) SolanaTransferSpl(vaultId string, tokenAddr string, amount *big.Int, to string, note ...string) (resp *SolanaTransactResp, err error)
SolanaTransferSpl transfer spl token on solana chains. @param vaultId: vault id. @param tokenAddr: token address. @param amount: amount to transfer, pass -1 to transfer max. @param to: to address.
type ClientJson ¶
type EvmMessageResp ¶
type EvmMessageResp struct {
Id string `json:"id"`
CreatedAt time.Time `json:"created_at"`
ModifiedAt time.Time `json:"modified_at"`
ManagedTransactionData struct {
CreatedBy struct {
Id string `json:"id"`
UserType string `json:"user_type"`
Name string `json:"name"`
Email string `json:"email"`
State string `json:"state"`
Role string `json:"role"`
} `json:"created_by"`
AbortedBy struct {
Id string `json:"id"`
UserType string `json:"user_type"`
Name string `json:"name"`
Email string `json:"email"`
State string `json:"state"`
Role string `json:"role"`
} `json:"aborted_by"`
DeviceSigningRequest struct {
Signers []struct {
User struct {
Id string `json:"id"`
UserType string `json:"user_type"`
Name string `json:"name"`
Email string `json:"email"`
State string `json:"state"`
Role string `json:"role"`
} `json:"user"`
ModifiedAt time.Time `json:"modified_at"`
HasSigned bool `json:"has_signed"`
} `json:"signers"`
} `json:"device_signing_request"`
ApprovalRequest struct {
State string `json:"state"`
QuorumSize int `json:"quorum_size"`
Approvers []struct {
User struct {
Id string `json:"id"`
UserType string `json:"user_type"`
Name string `json:"name"`
Email string `json:"email"`
State string `json:"state"`
Role string `json:"role"`
} `json:"user"`
ModifiedAt time.Time `json:"modified_at"`
Decision string `json:"decision"`
State string `json:"state"`
} `json:"approvers"`
ApprovalGroups []struct {
QuorumSize int `json:"quorum_size"`
Approvers []struct {
User struct {
Id string `json:"id"`
UserType string `json:"user_type"`
Name string `json:"name"`
Email string `json:"email"`
State string `json:"state"`
Role string `json:"role"`
} `json:"user"`
ModifiedAt time.Time `json:"modified_at"`
Decision string `json:"decision"`
State string `json:"state"`
} `json:"approvers"`
} `json:"approval_groups"`
} `json:"approval_request"`
PolicyMatch struct {
IsDefault bool `json:"is_default"`
RuleId string `json:"rule_id"`
RuleName string `json:"rule_name"`
ActionType string `json:"action_type"`
} `json:"policy_match"`
SignedCreateRequest struct {
RawData string `json:"raw_data"`
TimestampSignature struct {
Signature string `json:"signature"`
Timestamp int `json:"timestamp"`
} `json:"timestamp_signature"`
UrlPath string `json:"url_path"`
} `json:"signed_create_request"`
SignerType string `json:"signer_type"`
Risks []struct {
Type string `json:"type"`
Severity string `json:"severity"`
Title string `json:"title"`
Description string `json:"description"`
} `json:"risks"`
ErrorPushingToBlockchainMessage string `json:"error_pushing_to_blockchain_message"`
OriginalErrorPushingToBlockchainMessage string `json:"original_error_pushing_to_blockchain_message"`
Vault struct {
Id string `json:"id"`
Name string `json:"name"`
Address string `json:"address"`
EndUser struct {
Id string `json:"id"`
UserType string `json:"user_type"`
ExternalId string `json:"external_id"`
State string `json:"state"`
} `json:"end_user"`
} `json:"vault"`
IdempotenceId string `json:"idempotence_id"`
} `json:"managed_transaction_data"`
Signatures []struct {
Data string `json:"data"`
SignedBy struct {
Id string `json:"id"`
UserType string `json:"user_type"`
Name string `json:"name"`
Email string `json:"email"`
State string `json:"state"`
Role string `json:"role"`
} `json:"signed_by"`
} `json:"signatures"`
Note string `json:"note"`
SpamState string `json:"spam_state"`
Type string `json:"type"`
EvmMessageType string `json:"evm_message_type"`
State string `json:"state"`
StateChanges []struct {
ChangedAt time.Time `json:"changed_at"`
Prices struct {
NativeCurrencyPrice struct {
Price string `json:"price"`
FiatCurrency struct {
CurrencySymbol string `json:"currency_symbol"`
Decimals int `json:"decimals"`
} `json:"fiat_currency"`
} `json:"native_currency_price"`
TokenPrices []struct {
Price string `json:"price"`
FiatCurrency struct {
CurrencySymbol string `json:"currency_symbol"`
Decimals int `json:"decimals"`
} `json:"fiat_currency"`
Token struct {
Address struct {
Chain struct {
ChainType string `json:"chain_type"`
NamedChainId string `json:"named_chain_id"`
ChainId int `json:"chain_id"`
UniqueId string `json:"unique_id"`
} `json:"chain"`
HexRepr string `json:"hex_repr"`
} `json:"address"`
Name string `json:"name"`
Symbol string `json:"symbol"`
Type string `json:"type"`
Decimals int `json:"decimals"`
LogoUrl string `json:"logo_url"`
} `json:"token"`
} `json:"token_prices"`
} `json:"prices"`
AssetPrices []struct {
AssetIdentifier struct {
Type string `json:"type"`
Details struct {
Chain struct {
ChainType string `json:"chain_type"`
UniqueId string `json:"unique_id"`
Name string `json:"name"`
NativeCurrencySymbol string `json:"native_currency_symbol"`
NativeCurrencyName string `json:"native_currency_name"`
BlockchainExplorer struct {
TransactionUrl string `json:"transaction_url"`
AddressUrl string `json:"address_url"`
RootUrl string `json:"root_url"`
TransactionFormatUrl string `json:"transaction_format_url"`
AddressFormatUrl string `json:"address_format_url"`
} `json:"blockchain_explorer"`
BaseDenom string `json:"base_denom"`
} `json:"chain"`
Type string `json:"type"`
Coin struct {
Name string `json:"name"`
Symbol string `json:"symbol"`
Display string `json:"display"`
Description string `json:"description"`
BaseDenom string `json:"base_denom"`
Denom string `json:"denom"`
Decimals int `json:"decimals"`
LogoUrl string `json:"logo_url"`
ExplorerUrl string `json:"explorer_url"`
Type string `json:"type"`
} `json:"coin"`
} `json:"details"`
} `json:"asset_identifier"`
Price struct {
Price string `json:"price"`
FiatCurrency struct {
CurrencySymbol string `json:"currency_symbol"`
Decimals int `json:"decimals"`
} `json:"fiat_currency"`
} `json:"price"`
} `json:"asset_prices"`
PreviousState string `json:"previous_state"`
NewState string `json:"new_state"`
} `json:"state_changes"`
RawData string `json:"raw_data"`
TypedData struct {
Domain struct {
Name string `json:"name"`
Version string `json:"version"`
ChainId int `json:"chain_id"`
VerifyingContract struct {
Address string `json:"address"`
Vault struct {
Id string `json:"id"`
Name string `json:"name"`
Address string `json:"address"`
EndUser struct {
Id string `json:"id"`
UserType string `json:"user_type"`
ExternalId string `json:"external_id"`
State string `json:"state"`
} `json:"end_user"`
} `json:"vault"`
Contact struct {
Id string `json:"id"`
Name string `json:"name"`
AddressRef struct {
ChainType string `json:"chain_type"`
Address string `json:"address"`
Chains []struct {
ChainType string `json:"chain_type"`
NamedChainId string `json:"named_chain_id"`
ChainId int `json:"chain_id"`
UniqueId string `json:"unique_id"`
} `json:"chains"`
} `json:"address_ref"`
} `json:"contact"`
ExplorerUrl string `json:"explorer_url"`
Contract struct {
Name string `json:"name"`
Dapp struct {
Id string `json:"id"`
Name string `json:"name"`
Url string `json:"url"`
LogoUrl string `json:"logo_url"`
} `json:"dapp"`
IsVerified bool `json:"is_verified"`
Token struct {
Address struct {
Chain struct {
ChainType string `json:"chain_type"`
NamedChainId string `json:"named_chain_id"`
ChainId int `json:"chain_id"`
UniqueId string `json:"unique_id"`
} `json:"chain"`
HexRepr string `json:"hex_repr"`
} `json:"address"`
Name string `json:"name"`
Symbol string `json:"symbol"`
Type string `json:"type"`
Decimals int `json:"decimals"`
LogoUrl string `json:"logo_url"`
} `json:"token"`
} `json:"contract"`
} `json:"verifying_contract"`
Salt string `json:"salt"`
} `json:"domain"`
Type string `json:"type"`
} `json:"typed_data"`
Vault struct {
Id string `json:"id"`
Name string `json:"name"`
Address string `json:"address"`
EndUser struct {
Id string `json:"id"`
UserType string `json:"user_type"`
ExternalId string `json:"external_id"`
State string `json:"state"`
} `json:"end_user"`
} `json:"vault"`
Chain struct {
ChainType string `json:"chain_type"`
NamedChainId string `json:"named_chain_id"`
ChainId int `json:"chain_id"`
UniqueId string `json:"unique_id"`
Name string `json:"name"`
NativeCurrencySymbol string `json:"native_currency_symbol"`
NativeCurrencyName string `json:"native_currency_name"`
BlockchainExplorer struct {
TransactionUrl string `json:"transaction_url"`
AddressUrl string `json:"address_url"`
RootUrl string `json:"root_url"`
TransactionFormatUrl string `json:"transaction_format_url"`
AddressFormatUrl string `json:"address_format_url"`
} `json:"blockchain_explorer"`
GasType string `json:"gas_type"`
SupportsSecureNode bool `json:"supports_secure_node"`
} `json:"chain"`
}
type EvmRawTransactReq ¶
type EvmRawTransactReq struct {
VaultId string `json:"vault_id"`
Note string `json:"note"`
SignerType string `json:"signer_type"`
Type string `json:"type"`
Details struct {
Type string `json:"type"`
UseSecureNode bool `json:"use_secure_node"`
Chain string `json:"chain"`
Gas EvmGasOps `json:"gas"`
To string `json:"to"`
Value string `json:"value"`
Data map[string]interface{} `json:"data"`
} `json:"details"`
}
func (*EvmRawTransactReq) Prepare ¶
func (e *EvmRawTransactReq) Prepare()
type EvmSignRequest ¶
type EvmSignResp ¶
type EvmSignResp struct {
Id string `json:"id"`
CreatedAt time.Time `json:"created_at"`
ModifiedAt time.Time `json:"modified_at"`
ManagedTransactionData struct {
CreatedBy struct {
Id string `json:"id"`
UserType string `json:"user_type"`
Name string `json:"name"`
Email string `json:"email"`
State string `json:"state"`
Role string `json:"role"`
} `json:"created_by"`
AbortedBy struct {
Id string `json:"id"`
UserType string `json:"user_type"`
Name string `json:"name"`
Email string `json:"email"`
State string `json:"state"`
Role string `json:"role"`
} `json:"aborted_by"`
DeviceSigningRequest struct {
Signers []struct {
User struct {
Id string `json:"id"`
UserType string `json:"user_type"`
Name string `json:"name"`
Email string `json:"email"`
State string `json:"state"`
Role string `json:"role"`
} `json:"user"`
ModifiedAt time.Time `json:"modified_at"`
HasSigned bool `json:"has_signed"`
} `json:"signers"`
} `json:"device_signing_request"`
ApprovalRequest struct {
State string `json:"state"`
QuorumSize int `json:"quorum_size"`
Approvers []struct {
User struct {
Id string `json:"id"`
UserType string `json:"user_type"`
Name string `json:"name"`
Email string `json:"email"`
State string `json:"state"`
Role string `json:"role"`
} `json:"user"`
ModifiedAt time.Time `json:"modified_at"`
Decision string `json:"decision"`
} `json:"approvers"`
ApprovalGroups []struct {
QuorumSize int `json:"quorum_size"`
Approvers []struct {
User struct {
Id string `json:"id"`
UserType string `json:"user_type"`
Name string `json:"name"`
Email string `json:"email"`
State string `json:"state"`
Role string `json:"role"`
} `json:"user"`
ModifiedAt time.Time `json:"modified_at"`
Decision string `json:"decision"`
} `json:"approvers"`
} `json:"approval_groups"`
} `json:"approval_request"`
PolicyMatch struct {
IsDefault bool `json:"is_default"`
RuleId string `json:"rule_id"`
RuleName string `json:"rule_name"`
ActionType string `json:"action_type"`
} `json:"policy_match"`
SignedCreateRequest struct {
RawData string `json:"raw_data"`
TimestampSignature struct {
Signature string `json:"signature"`
Timestamp int `json:"timestamp"`
} `json:"timestamp_signature"`
UrlPath string `json:"url_path"`
} `json:"signed_create_request"`
SignerType string `json:"signer_type"`
Risks []struct {
Type string `json:"type"`
Severity string `json:"severity"`
Title string `json:"title"`
Description string `json:"description"`
} `json:"risks"`
ErrorPushingToBlockchainMessage string `json:"error_pushing_to_blockchain_message"`
OriginalErrorPushingToBlockchainMessage string `json:"original_error_pushing_to_blockchain_message"`
Vault struct {
Id string `json:"id"`
Name string `json:"name"`
Address string `json:"address"`
EndUser struct {
Id string `json:"id"`
UserType string `json:"user_type"`
ExternalId string `json:"external_id"`
State string `json:"state"`
} `json:"end_user"`
} `json:"vault"`
IdempotenceId string `json:"idempotence_id"`
} `json:"managed_transaction_data"`
Signatures []struct {
Data string `json:"data"`
SignedBy struct {
Id string `json:"id"`
UserType string `json:"user_type"`
Name string `json:"name"`
Email string `json:"email"`
State string `json:"state"`
Role string `json:"role"`
} `json:"signed_by"`
} `json:"signatures"`
Note string `json:"note"`
SpamState string `json:"spam_state"`
Type string `json:"type"`
EvmMessageType string `json:"evm_message_type"`
State string `json:"state"`
StateChanges []struct {
ChangedAt time.Time `json:"changed_at"`
Prices struct {
NativeCurrencyPrice struct {
Price string `json:"price"`
FiatCurrency struct {
CurrencySymbol string `json:"currency_symbol"`
Decimals int `json:"decimals"`
} `json:"fiat_currency"`
} `json:"native_currency_price"`
TokenPrices []struct {
Price string `json:"price"`
FiatCurrency struct {
CurrencySymbol string `json:"currency_symbol"`
Decimals int `json:"decimals"`
} `json:"fiat_currency"`
Token struct {
Address struct {
Chain struct {
ChainType string `json:"chain_type"`
NamedChainId string `json:"named_chain_id"`
ChainId int `json:"chain_id"`
UniqueId string `json:"unique_id"`
} `json:"chain"`
HexRepr string `json:"hex_repr"`
} `json:"address"`
Name string `json:"name"`
Symbol string `json:"symbol"`
Type string `json:"type"`
Decimals int `json:"decimals"`
LogoUrl string `json:"logo_url"`
} `json:"token"`
} `json:"token_prices"`
} `json:"prices"`
AssetPrices []struct {
AssetIdentifier struct {
Type string `json:"type"`
Details struct {
Chain struct {
ChainType string `json:"chain_type"`
UniqueId string `json:"unique_id"`
Name string `json:"name"`
NativeCurrencySymbol string `json:"native_currency_symbol"`
NativeCurrencyName string `json:"native_currency_name"`
BlockchainExplorer struct {
TransactionUrl string `json:"transaction_url"`
AddressUrl string `json:"address_url"`
RootUrl string `json:"root_url"`
TransactionFormatUrl string `json:"transaction_format_url"`
AddressFormatUrl string `json:"address_format_url"`
} `json:"blockchain_explorer"`
} `json:"chain"`
Type string `json:"type"`
Coin struct {
Type string `json:"type"`
Name string `json:"name"`
Symbol string `json:"symbol"`
Display string `json:"display"`
Description string `json:"description"`
Denom string `json:"denom"`
Decimals int `json:"decimals"`
LogoUrl string `json:"logo_url"`
ExplorerUrl string `json:"explorer_url"`
} `json:"coin"`
} `json:"details"`
} `json:"asset_identifier"`
Price struct {
Price string `json:"price"`
FiatCurrency struct {
CurrencySymbol string `json:"currency_symbol"`
Decimals int `json:"decimals"`
} `json:"fiat_currency"`
} `json:"price"`
} `json:"asset_prices"`
PreviousState string `json:"previous_state"`
NewState string `json:"new_state"`
} `json:"state_changes"`
RawData string `json:"raw_data"`
TypedData struct {
Domain struct {
Name string `json:"name"`
Version string `json:"version"`
ChainId int `json:"chain_id"`
VerifyingContract struct {
Address string `json:"address"`
Vault struct {
Id string `json:"id"`
Name string `json:"name"`
Address string `json:"address"`
EndUser struct {
Id string `json:"id"`
UserType string `json:"user_type"`
ExternalId string `json:"external_id"`
State string `json:"state"`
} `json:"end_user"`
} `json:"vault"`
Contact struct {
Id string `json:"id"`
Name string `json:"name"`
AddressRef struct {
ChainType string `json:"chain_type"`
Address string `json:"address"`
Chains []struct {
ChainType string `json:"chain_type"`
NamedChainId string `json:"named_chain_id"`
ChainId int `json:"chain_id"`
UniqueId string `json:"unique_id"`
} `json:"chains"`
} `json:"address_ref"`
} `json:"contact"`
ExplorerUrl string `json:"explorer_url"`
Contract struct {
Name string `json:"name"`
Dapp struct {
Id string `json:"id"`
Name string `json:"name"`
Url string `json:"url"`
LogoUrl string `json:"logo_url"`
} `json:"dapp"`
IsVerified bool `json:"is_verified"`
Token struct {
Address struct {
Chain struct {
ChainType string `json:"chain_type"`
NamedChainId string `json:"named_chain_id"`
ChainId int `json:"chain_id"`
UniqueId string `json:"unique_id"`
} `json:"chain"`
HexRepr string `json:"hex_repr"`
} `json:"address"`
Name string `json:"name"`
Symbol string `json:"symbol"`
Type string `json:"type"`
Decimals int `json:"decimals"`
LogoUrl string `json:"logo_url"`
} `json:"token"`
} `json:"contract"`
} `json:"verifying_contract"`
Salt string `json:"salt"`
} `json:"domain"`
Type string `json:"type"`
} `json:"typed_data"`
Vault struct {
Id string `json:"id"`
Name string `json:"name"`
Address string `json:"address"`
EndUser struct {
Id string `json:"id"`
UserType string `json:"user_type"`
ExternalId string `json:"external_id"`
State string `json:"state"`
} `json:"end_user"`
} `json:"vault"`
Chain struct {
ChainType string `json:"chain_type"`
NamedChainId string `json:"named_chain_id"`
ChainId int `json:"chain_id"`
UniqueId string `json:"unique_id"`
Name string `json:"name"`
NativeCurrencySymbol string `json:"native_currency_symbol"`
NativeCurrencyName string `json:"native_currency_name"`
BlockchainExplorer struct {
TransactionUrl string `json:"transaction_url"`
AddressUrl string `json:"address_url"`
RootUrl string `json:"root_url"`
TransactionFormatUrl string `json:"transaction_format_url"`
AddressFormatUrl string `json:"address_format_url"`
} `json:"blockchain_explorer"`
GasType string `json:"gas_type"`
SupportsSecureNode bool `json:"supports_secure_node"`
} `json:"chain"`
}
type EvmTransactResp ¶
type EvmTransactResp struct {
Id string `json:"id"`
CreatedAt time.Time `json:"created_at"`
ModifiedAt time.Time `json:"modified_at"`
ManagedTransactionData struct {
CreatedBy struct {
Id string `json:"id"`
UserType string `json:"user_type"`
Name string `json:"name"`
Email string `json:"email"`
State string `json:"state"`
Role string `json:"role"`
} `json:"created_by"`
AbortedBy struct {
Id string `json:"id"`
UserType string `json:"user_type"`
Name string `json:"name"`
Email string `json:"email"`
State string `json:"state"`
Role string `json:"role"`
} `json:"aborted_by"`
DeviceSigningRequest struct {
Signers []struct {
User struct {
Id string `json:"id"`
UserType string `json:"user_type"`
Name string `json:"name"`
Email string `json:"email"`
State string `json:"state"`
Role string `json:"role"`
} `json:"user"`
ModifiedAt time.Time `json:"modified_at"`
HasSigned bool `json:"has_signed"`
} `json:"signers"`
} `json:"device_signing_request"`
ApprovalRequest struct {
State string `json:"state"`
QuorumSize int `json:"quorum_size"`
Approvers []struct {
User struct {
Id string `json:"id"`
UserType string `json:"user_type"`
Name string `json:"name"`
Email string `json:"email"`
State string `json:"state"`
Role string `json:"role"`
} `json:"user"`
ModifiedAt time.Time `json:"modified_at"`
Decision string `json:"decision"`
} `json:"approvers"`
ApprovalGroups []struct {
QuorumSize int `json:"quorum_size"`
Approvers []struct {
User struct {
Id string `json:"id"`
UserType string `json:"user_type"`
Name string `json:"name"`
Email string `json:"email"`
State string `json:"state"`
Role string `json:"role"`
} `json:"user"`
ModifiedAt time.Time `json:"modified_at"`
Decision string `json:"decision"`
} `json:"approvers"`
} `json:"approval_groups"`
} `json:"approval_request"`
PolicyMatch struct {
IsDefault bool `json:"is_default"`
RuleId string `json:"rule_id"`
RuleName string `json:"rule_name"`
ActionType string `json:"action_type"`
} `json:"policy_match"`
SignedCreateRequest struct {
RawData string `json:"raw_data"`
TimestampSignature struct {
Signature string `json:"signature"`
Timestamp int `json:"timestamp"`
} `json:"timestamp_signature"`
UrlPath string `json:"url_path"`
} `json:"signed_create_request"`
SignerType string `json:"signer_type"`
Risks []struct {
Type string `json:"type"`
Severity string `json:"severity"`
Title string `json:"title"`
Description string `json:"description"`
} `json:"risks"`
ErrorPushingToBlockchainMessage string `json:"error_pushing_to_blockchain_message"`
OriginalErrorPushingToBlockchainMessage string `json:"original_error_pushing_to_blockchain_message"`
Vault struct {
Id string `json:"id"`
Name string `json:"name"`
Address string `json:"address"`
EndUser struct {
Id string `json:"id"`
UserType string `json:"user_type"`
ExternalId string `json:"external_id"`
State string `json:"state"`
} `json:"end_user"`
} `json:"vault"`
IdempotenceId string `json:"idempotence_id"`
} `json:"managed_transaction_data"`
Signatures []struct {
Data string `json:"data"`
SignedBy struct {
Id string `json:"id"`
UserType string `json:"user_type"`
Name string `json:"name"`
Email string `json:"email"`
State string `json:"state"`
Role string `json:"role"`
} `json:"signed_by"`
} `json:"signatures"`
Note string `json:"note"`
SpamState string `json:"spam_state"`
Type string `json:"type"`
EvmTransactionTypeDetails struct {
Type string `json:"type"`
Direction string `json:"direction"`
} `json:"evm_transaction_type_details"`
Chain struct {
ChainType string `json:"chain_type"`
NamedChainId string `json:"named_chain_id"`
ChainId int `json:"chain_id"`
UniqueId string `json:"unique_id"`
Name string `json:"name"`
NativeCurrencySymbol string `json:"native_currency_symbol"`
NativeCurrencyName string `json:"native_currency_name"`
BlockchainExplorer struct {
TransactionUrl string `json:"transaction_url"`
AddressUrl string `json:"address_url"`
RootUrl string `json:"root_url"`
TransactionFormatUrl string `json:"transaction_format_url"`
AddressFormatUrl string `json:"address_format_url"`
} `json:"blockchain_explorer"`
GasType string `json:"gas_type"`
SupportsSecureNode bool `json:"supports_secure_node"`
} `json:"chain"`
From struct {
Address string `json:"address"`
Vault struct {
Id string `json:"id"`
Name string `json:"name"`
Address string `json:"address"`
EndUser struct {
Id string `json:"id"`
UserType string `json:"user_type"`
ExternalId string `json:"external_id"`
State string `json:"state"`
} `json:"end_user"`
} `json:"vault"`
Contact struct {
Id string `json:"id"`
Name string `json:"name"`
AddressRef struct {
ChainType string `json:"chain_type"`
Address string `json:"address"`
Chains []struct {
ChainType string `json:"chain_type"`
NamedChainId string `json:"named_chain_id"`
ChainId int `json:"chain_id"`
UniqueId string `json:"unique_id"`
} `json:"chains"`
} `json:"address_ref"`
} `json:"contact"`
ExplorerUrl string `json:"explorer_url"`
Contract struct {
Name string `json:"name"`
Dapp struct {
Id string `json:"id"`
Name string `json:"name"`
Url string `json:"url"`
LogoUrl string `json:"logo_url"`
} `json:"dapp"`
IsVerified bool `json:"is_verified"`
Token struct {
Address struct {
Chain struct {
ChainType string `json:"chain_type"`
NamedChainId string `json:"named_chain_id"`
ChainId int `json:"chain_id"`
UniqueId string `json:"unique_id"`
} `json:"chain"`
HexRepr string `json:"hex_repr"`
} `json:"address"`
Name string `json:"name"`
Symbol string `json:"symbol"`
Type string `json:"type"`
Decimals int `json:"decimals"`
LogoUrl string `json:"logo_url"`
} `json:"token"`
} `json:"contract"`
} `json:"from"`
To struct {
Address string `json:"address"`
Vault struct {
Id string `json:"id"`
Name string `json:"name"`
Address string `json:"address"`
EndUser struct {
Id string `json:"id"`
UserType string `json:"user_type"`
ExternalId string `json:"external_id"`
State string `json:"state"`
} `json:"end_user"`
} `json:"vault"`
Contact struct {
Id string `json:"id"`
Name string `json:"name"`
AddressRef struct {
ChainType string `json:"chain_type"`
Address string `json:"address"`
Chains []struct {
ChainType string `json:"chain_type"`
NamedChainId string `json:"named_chain_id"`
ChainId int `json:"chain_id"`
UniqueId string `json:"unique_id"`
} `json:"chains"`
} `json:"address_ref"`
} `json:"contact"`
ExplorerUrl string `json:"explorer_url"`
Contract struct {
Name string `json:"name"`
Dapp struct {
Id string `json:"id"`
Name string `json:"name"`
Url string `json:"url"`
LogoUrl string `json:"logo_url"`
} `json:"dapp"`
IsVerified bool `json:"is_verified"`
Token struct {
Address struct {
Chain struct {
ChainType string `json:"chain_type"`
NamedChainId string `json:"named_chain_id"`
ChainId int `json:"chain_id"`
UniqueId string `json:"unique_id"`
} `json:"chain"`
HexRepr string `json:"hex_repr"`
} `json:"address"`
Name string `json:"name"`
Symbol string `json:"symbol"`
Type string `json:"type"`
Decimals int `json:"decimals"`
LogoUrl string `json:"logo_url"`
} `json:"token"`
} `json:"contract"`
} `json:"to"`
Value string `json:"value"`
Data string `json:"data"`
ParsedData struct {
Method string `json:"method"`
MethodArguments []struct {
Name string `json:"name"`
Type string `json:"type"`
Value string `json:"value"`
EnrichedAddress struct {
Address string `json:"address"`
Vault struct {
Id string `json:"id"`
Name string `json:"name"`
Address string `json:"address"`
EndUser struct {
Id string `json:"id"`
UserType string `json:"user_type"`
ExternalId string `json:"external_id"`
State string `json:"state"`
} `json:"end_user"`
} `json:"vault"`
Contact struct {
Id string `json:"id"`
Name string `json:"name"`
AddressRef struct {
ChainType string `json:"chain_type"`
Address string `json:"address"`
Chains []struct {
ChainType string `json:"chain_type"`
NamedChainId string `json:"named_chain_id"`
ChainId int `json:"chain_id"`
UniqueId string `json:"unique_id"`
} `json:"chains"`
} `json:"address_ref"`
} `json:"contact"`
ExplorerUrl string `json:"explorer_url"`
Contract struct {
Name string `json:"name"`
Dapp struct {
Id string `json:"id"`
Name string `json:"name"`
Url string `json:"url"`
LogoUrl string `json:"logo_url"`
} `json:"dapp"`
IsVerified bool `json:"is_verified"`
Token struct {
Address struct {
Chain struct {
ChainType string `json:"chain_type"`
NamedChainId string `json:"named_chain_id"`
ChainId int `json:"chain_id"`
UniqueId string `json:"unique_id"`
} `json:"chain"`
HexRepr string `json:"hex_repr"`
} `json:"address"`
Name string `json:"name"`
Symbol string `json:"symbol"`
Type string `json:"type"`
Decimals int `json:"decimals"`
LogoUrl string `json:"logo_url"`
} `json:"token"`
} `json:"contract"`
} `json:"enriched_address"`
} `json:"method_arguments"`
} `json:"parsed_data"`
Hash string `json:"hash"`
Nonce int `json:"nonce"`
Block struct {
Number int `json:"number"`
Hash string `json:"hash"`
MinedAt time.Time `json:"mined_at"`
} `json:"block"`
ExpectedResult struct {
Reversion struct {
State string `json:"state"`
Reason string `json:"reason"`
} `json:"reversion"`
GasDebit struct {
GasUsed string `json:"gas_used"`
GasPrice string `json:"gas_price"`
TotalFee string `json:"total_fee"`
} `json:"gas_debit"`
Effects struct {
BalanceChanges []struct {
Type string `json:"type"`
Address struct {
Address string `json:"address"`
Vault struct {
Id string `json:"id"`
Name string `json:"name"`
Address string `json:"address"`
EndUser struct {
Id string `json:"id"`
UserType string `json:"user_type"`
ExternalId string `json:"external_id"`
State string `json:"state"`
} `json:"end_user"`
} `json:"vault"`
Contact struct {
Id string `json:"id"`
Name string `json:"name"`
AddressRef struct {
ChainType string `json:"chain_type"`
Address string `json:"address"`
Chains []struct {
} `json:"chains"`
} `json:"address_ref"`
} `json:"contact"`
ExplorerUrl string `json:"explorer_url"`
Contract struct {
Name string `json:"name"`
Dapp struct {
Id string `json:"id"`
Name string `json:"name"`
Url string `json:"url"`
LogoUrl string `json:"logo_url"`
} `json:"dapp"`
IsVerified bool `json:"is_verified"`
Token struct {
Address struct {
Chain struct {
} `json:"chain"`
HexRepr string `json:"hex_repr"`
} `json:"address"`
Name string `json:"name"`
Symbol string `json:"symbol"`
Type string `json:"type"`
Decimals int `json:"decimals"`
LogoUrl string `json:"logo_url"`
} `json:"token"`
} `json:"contract"`
} `json:"address"`
Diff string `json:"diff"`
Price struct {
Price string `json:"price"`
FiatCurrency struct {
CurrencySymbol string `json:"currency_symbol"`
Decimals int `json:"decimals"`
} `json:"fiat_currency"`
} `json:"price"`
} `json:"balance_changes"`
Transfers []struct {
Type string `json:"type"`
From struct {
Address string `json:"address"`
Vault struct {
Id string `json:"id"`
Name string `json:"name"`
Address string `json:"address"`
EndUser struct {
Id string `json:"id"`
UserType string `json:"user_type"`
ExternalId string `json:"external_id"`
State string `json:"state"`
} `json:"end_user"`
} `json:"vault"`
Contact struct {
Id string `json:"id"`
Name string `json:"name"`
AddressRef struct {
ChainType string `json:"chain_type"`
Address string `json:"address"`
Chains []struct {
} `json:"chains"`
} `json:"address_ref"`
} `json:"contact"`
ExplorerUrl string `json:"explorer_url"`
Contract struct {
Name string `json:"name"`
Dapp struct {
Id string `json:"id"`
Name string `json:"name"`
Url string `json:"url"`
LogoUrl string `json:"logo_url"`
} `json:"dapp"`
IsVerified bool `json:"is_verified"`
Token struct {
Address struct {
Chain struct {
} `json:"chain"`
HexRepr string `json:"hex_repr"`
} `json:"address"`
Name string `json:"name"`
Symbol string `json:"symbol"`
Type string `json:"type"`
Decimals int `json:"decimals"`
LogoUrl string `json:"logo_url"`
} `json:"token"`
} `json:"contract"`
} `json:"from"`
To struct {
Address string `json:"address"`
Vault struct {
Id string `json:"id"`
Name string `json:"name"`
Address string `json:"address"`
EndUser struct {
Id string `json:"id"`
UserType string `json:"user_type"`
ExternalId string `json:"external_id"`
State string `json:"state"`
} `json:"end_user"`
} `json:"vault"`
Contact struct {
Id string `json:"id"`
Name string `json:"name"`
AddressRef struct {
ChainType string `json:"chain_type"`
Address string `json:"address"`
Chains []struct {
} `json:"chains"`
} `json:"address_ref"`
} `json:"contact"`
ExplorerUrl string `json:"explorer_url"`
Contract struct {
Name string `json:"name"`
Dapp struct {
Id string `json:"id"`
Name string `json:"name"`
Url string `json:"url"`
LogoUrl string `json:"logo_url"`
} `json:"dapp"`
IsVerified bool `json:"is_verified"`
Token struct {
Address struct {
Chain struct {
} `json:"chain"`
HexRepr string `json:"hex_repr"`
} `json:"address"`
Name string `json:"name"`
Symbol string `json:"symbol"`
Type string `json:"type"`
Decimals int `json:"decimals"`
LogoUrl string `json:"logo_url"`
} `json:"token"`
} `json:"contract"`
} `json:"to"`
Amount string `json:"amount"`
Price struct {
Price string `json:"price"`
FiatCurrency struct {
CurrencySymbol string `json:"currency_symbol"`
Decimals int `json:"decimals"`
} `json:"fiat_currency"`
} `json:"price"`
} `json:"transfers"`
Allowances []struct {
Type string `json:"type"`
Owner struct {
Address string `json:"address"`
Vault struct {
Id string `json:"id"`
Name string `json:"name"`
Address string `json:"address"`
EndUser struct {
Id string `json:"id"`
UserType string `json:"user_type"`
ExternalId string `json:"external_id"`
State string `json:"state"`
} `json:"end_user"`
} `json:"vault"`
Contact struct {
Id string `json:"id"`
Name string `json:"name"`
AddressRef struct {
ChainType string `json:"chain_type"`
Address string `json:"address"`
Chains []struct {
} `json:"chains"`
} `json:"address_ref"`
} `json:"contact"`
ExplorerUrl string `json:"explorer_url"`
Contract struct {
Name string `json:"name"`
Dapp struct {
Id string `json:"id"`
Name string `json:"name"`
Url string `json:"url"`
LogoUrl string `json:"logo_url"`
} `json:"dapp"`
IsVerified bool `json:"is_verified"`
Token struct {
Address struct {
Chain struct {
} `json:"chain"`
HexRepr string `json:"hex_repr"`
} `json:"address"`
Name string `json:"name"`
Symbol string `json:"symbol"`
Type string `json:"type"`
Decimals int `json:"decimals"`
LogoUrl string `json:"logo_url"`
} `json:"token"`
} `json:"contract"`
} `json:"owner"`
Spender struct {
Address string `json:"address"`
Vault struct {
Id string `json:"id"`
Name string `json:"name"`
Address string `json:"address"`
EndUser struct {
Id string `json:"id"`
UserType string `json:"user_type"`
ExternalId string `json:"external_id"`
State string `json:"state"`
} `json:"end_user"`
} `json:"vault"`
Contact struct {
Id string `json:"id"`
Name string `json:"name"`
AddressRef struct {
ChainType string `json:"chain_type"`
Address string `json:"address"`
Chains []struct {
} `json:"chains"`
} `json:"address_ref"`
} `json:"contact"`
ExplorerUrl string `json:"explorer_url"`
Contract struct {
Name string `json:"name"`
Dapp struct {
Id string `json:"id"`
Name string `json:"name"`
Url string `json:"url"`
LogoUrl string `json:"logo_url"`
} `json:"dapp"`
IsVerified bool `json:"is_verified"`
Token struct {
Address struct {
Chain struct {
} `json:"chain"`
HexRepr string `json:"hex_repr"`
} `json:"address"`
Name string `json:"name"`
Symbol string `json:"symbol"`
Type string `json:"type"`
Decimals int `json:"decimals"`
LogoUrl string `json:"logo_url"`
} `json:"token"`
} `json:"contract"`
} `json:"spender"`
Amount string `json:"amount"`
TokenContract struct {
Name string `json:"name"`
Dapp struct {
Id string `json:"id"`
Name string `json:"name"`
Url string `json:"url"`
LogoUrl string `json:"logo_url"`
} `json:"dapp"`
IsVerified bool `json:"is_verified"`
Token struct {
Address struct {
Chain struct {
ChainType string `json:"chain_type"`
NamedChainId string `json:"named_chain_id"`
ChainId int `json:"chain_id"`
UniqueId string `json:"unique_id"`
} `json:"chain"`
HexRepr string `json:"hex_repr"`
} `json:"address"`
Name string `json:"name"`
Symbol string `json:"symbol"`
Type string `json:"type"`
Decimals int `json:"decimals"`
LogoUrl string `json:"logo_url"`
} `json:"token"`
} `json:"token_contract"`
Price struct {
Price string `json:"price"`
FiatCurrency struct {
CurrencySymbol string `json:"currency_symbol"`
Decimals int `json:"decimals"`
} `json:"fiat_currency"`
} `json:"price"`
} `json:"allowances"`
Bridge []struct {
BridgeName string `json:"bridge_name"`
Source struct {
Type string `json:"type"`
SourceAddress struct {
Address string `json:"address"`
Vault struct {
Id string `json:"id"`
Name string `json:"name"`
Address string `json:"address"`
EndUser struct {
Id string `json:"id"`
UserType string `json:"user_type"`
ExternalId string `json:"external_id"`
State string `json:"state"`
} `json:"end_user"`
} `json:"vault"`
Contact struct {
Id string `json:"id"`
Name string `json:"name"`
AddressRef struct {
ChainType string `json:"chain_type"`
Address string `json:"address"`
Chains []interface{} `json:"chains"`
} `json:"address_ref"`
} `json:"contact"`
ExplorerUrl string `json:"explorer_url"`
Contract struct {
Name string `json:"name"`
Dapp struct {
Id string `json:"id"`
Name string `json:"name"`
Url string `json:"url"`
LogoUrl string `json:"logo_url"`
} `json:"dapp"`
IsVerified bool `json:"is_verified"`
Token struct {
Address struct {
} `json:"address"`
Name string `json:"name"`
Symbol string `json:"symbol"`
Type string `json:"type"`
Decimals int `json:"decimals"`
LogoUrl string `json:"logo_url"`
} `json:"token"`
} `json:"contract"`
} `json:"source_address"`
Price struct {
Price string `json:"price"`
FiatCurrency struct {
CurrencySymbol string `json:"currency_symbol"`
Decimals int `json:"decimals"`
} `json:"fiat_currency"`
} `json:"price"`
} `json:"source"`
Destination struct {
Type string `json:"type"`
DestAddress struct {
Address string `json:"address"`
Vault struct {
Id string `json:"id"`
Name string `json:"name"`
Address string `json:"address"`
EndUser struct {
Id string `json:"id"`
UserType string `json:"user_type"`
ExternalId string `json:"external_id"`
State string `json:"state"`
} `json:"end_user"`
} `json:"vault"`
Contact struct {
Id string `json:"id"`
Name string `json:"name"`
AddressRef struct {
ChainType string `json:"chain_type"`
Address string `json:"address"`
Chains []interface{} `json:"chains"`
} `json:"address_ref"`
} `json:"contact"`
ExplorerUrl string `json:"explorer_url"`
Contract struct {
Name string `json:"name"`
Dapp struct {
Id string `json:"id"`
Name string `json:"name"`
Url string `json:"url"`
LogoUrl string `json:"logo_url"`
} `json:"dapp"`
IsVerified bool `json:"is_verified"`
Token struct {
Address struct {
} `json:"address"`
Name string `json:"name"`
Symbol string `json:"symbol"`
Type string `json:"type"`
Decimals int `json:"decimals"`
LogoUrl string `json:"logo_url"`
} `json:"token"`
} `json:"contract"`
} `json:"dest_address"`
DestChain struct {
ChainType string `json:"chain_type"`
NamedChainId string `json:"named_chain_id"`
ChainId int `json:"chain_id"`
UniqueId string `json:"unique_id"`
Name string `json:"name"`
NativeCurrencySymbol string `json:"native_currency_symbol"`
NativeCurrencyName string `json:"native_currency_name"`
BlockchainExplorer struct {
TransactionUrl string `json:"transaction_url"`
AddressUrl string `json:"address_url"`
RootUrl string `json:"root_url"`
TransactionFormatUrl string `json:"transaction_format_url"`
AddressFormatUrl string `json:"address_format_url"`
} `json:"blockchain_explorer"`
GasType string `json:"gas_type"`
SupportsSecureNode bool `json:"supports_secure_node"`
} `json:"dest_chain"`
} `json:"destination"`
Amount string `json:"amount"`
} `json:"bridge"`
} `json:"effects"`
} `json:"expected_result"`
SimulationStatusResult struct {
SimulationStatus string `json:"simulation_status"`
Details string `json:"details"`
} `json:"simulation_status_result"`
MinedResult struct {
Reversion struct {
State string `json:"state"`
Reason string `json:"reason"`
} `json:"reversion"`
GasDebit struct {
GasUsed string `json:"gas_used"`
GasPrice string `json:"gas_price"`
TotalFee string `json:"total_fee"`
} `json:"gas_debit"`
Effects struct {
BalanceChanges []struct {
Type string `json:"type"`
Address struct {
Address string `json:"address"`
Vault struct {
Id string `json:"id"`
Name string `json:"name"`
Address string `json:"address"`
EndUser struct {
Id string `json:"id"`
UserType string `json:"user_type"`
ExternalId string `json:"external_id"`
State string `json:"state"`
} `json:"end_user"`
} `json:"vault"`
Contact struct {
Id string `json:"id"`
Name string `json:"name"`
AddressRef struct {
ChainType string `json:"chain_type"`
Address string `json:"address"`
Chains []struct {
} `json:"chains"`
} `json:"address_ref"`
} `json:"contact"`
ExplorerUrl string `json:"explorer_url"`
Contract struct {
Name string `json:"name"`
Dapp struct {
Id string `json:"id"`
Name string `json:"name"`
Url string `json:"url"`
LogoUrl string `json:"logo_url"`
} `json:"dapp"`
IsVerified bool `json:"is_verified"`
Token struct {
Address struct {
Chain struct {
} `json:"chain"`
HexRepr string `json:"hex_repr"`
} `json:"address"`
Name string `json:"name"`
Symbol string `json:"symbol"`
Type string `json:"type"`
Decimals int `json:"decimals"`
LogoUrl string `json:"logo_url"`
} `json:"token"`
} `json:"contract"`
} `json:"address"`
Diff string `json:"diff"`
Price struct {
Price string `json:"price"`
FiatCurrency struct {
CurrencySymbol string `json:"currency_symbol"`
Decimals int `json:"decimals"`
} `json:"fiat_currency"`
} `json:"price"`
} `json:"balance_changes"`
Transfers []struct {
Type string `json:"type"`
From struct {
Address string `json:"address"`
Vault struct {
Id string `json:"id"`
Name string `json:"name"`
Address string `json:"address"`
EndUser struct {
Id string `json:"id"`
UserType string `json:"user_type"`
ExternalId string `json:"external_id"`
State string `json:"state"`
} `json:"end_user"`
} `json:"vault"`
Contact struct {
Id string `json:"id"`
Name string `json:"name"`
AddressRef struct {
ChainType string `json:"chain_type"`
Address string `json:"address"`
Chains []struct {
} `json:"chains"`
} `json:"address_ref"`
} `json:"contact"`
ExplorerUrl string `json:"explorer_url"`
Contract struct {
Name string `json:"name"`
Dapp struct {
Id string `json:"id"`
Name string `json:"name"`
Url string `json:"url"`
LogoUrl string `json:"logo_url"`
} `json:"dapp"`
IsVerified bool `json:"is_verified"`
Token struct {
Address struct {
Chain struct {
} `json:"chain"`
HexRepr string `json:"hex_repr"`
} `json:"address"`
Name string `json:"name"`
Symbol string `json:"symbol"`
Type string `json:"type"`
Decimals int `json:"decimals"`
LogoUrl string `json:"logo_url"`
} `json:"token"`
} `json:"contract"`
} `json:"from"`
To struct {
Address string `json:"address"`
Vault struct {
Id string `json:"id"`
Name string `json:"name"`
Address string `json:"address"`
EndUser struct {
Id string `json:"id"`
UserType string `json:"user_type"`
ExternalId string `json:"external_id"`
State string `json:"state"`
} `json:"end_user"`
} `json:"vault"`
Contact struct {
Id string `json:"id"`
Name string `json:"name"`
AddressRef struct {
ChainType string `json:"chain_type"`
Address string `json:"address"`
Chains []struct {
} `json:"chains"`
} `json:"address_ref"`
} `json:"contact"`
ExplorerUrl string `json:"explorer_url"`
Contract struct {
Name string `json:"name"`
Dapp struct {
Id string `json:"id"`
Name string `json:"name"`
Url string `json:"url"`
LogoUrl string `json:"logo_url"`
} `json:"dapp"`
IsVerified bool `json:"is_verified"`
Token struct {
Address struct {
Chain struct {
} `json:"chain"`
HexRepr string `json:"hex_repr"`
} `json:"address"`
Name string `json:"name"`
Symbol string `json:"symbol"`
Type string `json:"type"`
Decimals int `json:"decimals"`
LogoUrl string `json:"logo_url"`
} `json:"token"`
} `json:"contract"`
} `json:"to"`
Amount string `json:"amount"`
Price struct {
Price string `json:"price"`
FiatCurrency struct {
CurrencySymbol string `json:"currency_symbol"`
Decimals int `json:"decimals"`
} `json:"fiat_currency"`
} `json:"price"`
} `json:"transfers"`
Allowances []struct {
Type string `json:"type"`
Owner struct {
Address string `json:"address"`
Vault struct {
Id string `json:"id"`
Name string `json:"name"`
Address string `json:"address"`
EndUser struct {
Id string `json:"id"`
UserType string `json:"user_type"`
ExternalId string `json:"external_id"`
State string `json:"state"`
} `json:"end_user"`
} `json:"vault"`
Contact struct {
Id string `json:"id"`
Name string `json:"name"`
AddressRef struct {
ChainType string `json:"chain_type"`
Address string `json:"address"`
Chains []struct {
} `json:"chains"`
} `json:"address_ref"`
} `json:"contact"`
ExplorerUrl string `json:"explorer_url"`
Contract struct {
Name string `json:"name"`
Dapp struct {
Id string `json:"id"`
Name string `json:"name"`
Url string `json:"url"`
LogoUrl string `json:"logo_url"`
} `json:"dapp"`
IsVerified bool `json:"is_verified"`
Token struct {
Address struct {
Chain struct {
} `json:"chain"`
HexRepr string `json:"hex_repr"`
} `json:"address"`
Name string `json:"name"`
Symbol string `json:"symbol"`
Type string `json:"type"`
Decimals int `json:"decimals"`
LogoUrl string `json:"logo_url"`
} `json:"token"`
} `json:"contract"`
} `json:"owner"`
Spender struct {
Address string `json:"address"`
Vault struct {
Id string `json:"id"`
Name string `json:"name"`
Address string `json:"address"`
EndUser struct {
Id string `json:"id"`
UserType string `json:"user_type"`
ExternalId string `json:"external_id"`
State string `json:"state"`
} `json:"end_user"`
} `json:"vault"`
Contact struct {
Id string `json:"id"`
Name string `json:"name"`
AddressRef struct {
ChainType string `json:"chain_type"`
Address string `json:"address"`
Chains []struct {
} `json:"chains"`
} `json:"address_ref"`
} `json:"contact"`
ExplorerUrl string `json:"explorer_url"`
Contract struct {
Name string `json:"name"`
Dapp struct {
Id string `json:"id"`
Name string `json:"name"`
Url string `json:"url"`
LogoUrl string `json:"logo_url"`
} `json:"dapp"`
IsVerified bool `json:"is_verified"`
Token struct {
Address struct {
Chain struct {
} `json:"chain"`
HexRepr string `json:"hex_repr"`
} `json:"address"`
Name string `json:"name"`
Symbol string `json:"symbol"`
Type string `json:"type"`
Decimals int `json:"decimals"`
LogoUrl string `json:"logo_url"`
} `json:"token"`
} `json:"contract"`
} `json:"spender"`
Amount string `json:"amount"`
TokenContract struct {
Name string `json:"name"`
Dapp struct {
Id string `json:"id"`
Name string `json:"name"`
Url string `json:"url"`
LogoUrl string `json:"logo_url"`
} `json:"dapp"`
IsVerified bool `json:"is_verified"`
Token struct {
Address struct {
Chain struct {
ChainType string `json:"chain_type"`
NamedChainId string `json:"named_chain_id"`
ChainId int `json:"chain_id"`
UniqueId string `json:"unique_id"`
} `json:"chain"`
HexRepr string `json:"hex_repr"`
} `json:"address"`
Name string `json:"name"`
Symbol string `json:"symbol"`
Type string `json:"type"`
Decimals int `json:"decimals"`
LogoUrl string `json:"logo_url"`
} `json:"token"`
} `json:"token_contract"`
Price struct {
Price string `json:"price"`
FiatCurrency struct {
CurrencySymbol string `json:"currency_symbol"`
Decimals int `json:"decimals"`
} `json:"fiat_currency"`
} `json:"price"`
} `json:"allowances"`
Bridge []struct {
BridgeName string `json:"bridge_name"`
Source struct {
Type string `json:"type"`
SourceAddress struct {
Address string `json:"address"`
Vault struct {
Id string `json:"id"`
Name string `json:"name"`
Address string `json:"address"`
EndUser struct {
Id string `json:"id"`
UserType string `json:"user_type"`
ExternalId string `json:"external_id"`
State string `json:"state"`
} `json:"end_user"`
} `json:"vault"`
Contact struct {
Id string `json:"id"`
Name string `json:"name"`
AddressRef struct {
ChainType string `json:"chain_type"`
Address string `json:"address"`
Chains []interface{} `json:"chains"`
} `json:"address_ref"`
} `json:"contact"`
ExplorerUrl string `json:"explorer_url"`
Contract struct {
Name string `json:"name"`
Dapp struct {
Id string `json:"id"`
Name string `json:"name"`
Url string `json:"url"`
LogoUrl string `json:"logo_url"`
} `json:"dapp"`
IsVerified bool `json:"is_verified"`
Token struct {
Address struct {
} `json:"address"`
Name string `json:"name"`
Symbol string `json:"symbol"`
Type string `json:"type"`
Decimals int `json:"decimals"`
LogoUrl string `json:"logo_url"`
} `json:"token"`
} `json:"contract"`
} `json:"source_address"`
Price struct {
Price string `json:"price"`
FiatCurrency struct {
CurrencySymbol string `json:"currency_symbol"`
Decimals int `json:"decimals"`
} `json:"fiat_currency"`
} `json:"price"`
} `json:"source"`
Destination struct {
Type string `json:"type"`
DestAddress struct {
Address string `json:"address"`
Vault struct {
Id string `json:"id"`
Name string `json:"name"`
Address string `json:"address"`
EndUser struct {
Id string `json:"id"`
UserType string `json:"user_type"`
ExternalId string `json:"external_id"`
State string `json:"state"`
} `json:"end_user"`
} `json:"vault"`
Contact struct {
Id string `json:"id"`
Name string `json:"name"`
AddressRef struct {
ChainType string `json:"chain_type"`
Address string `json:"address"`
Chains []interface{} `json:"chains"`
} `json:"address_ref"`
} `json:"contact"`
ExplorerUrl string `json:"explorer_url"`
Contract struct {
Name string `json:"name"`
Dapp struct {
Id string `json:"id"`
Name string `json:"name"`
Url string `json:"url"`
LogoUrl string `json:"logo_url"`
} `json:"dapp"`
IsVerified bool `json:"is_verified"`
Token struct {
Address struct {
} `json:"address"`
Name string `json:"name"`
Symbol string `json:"symbol"`
Type string `json:"type"`
Decimals int `json:"decimals"`
LogoUrl string `json:"logo_url"`
} `json:"token"`
} `json:"contract"`
} `json:"dest_address"`
DestChain struct {
ChainType string `json:"chain_type"`
NamedChainId string `json:"named_chain_id"`
ChainId int `json:"chain_id"`
UniqueId string `json:"unique_id"`
Name string `json:"name"`
NativeCurrencySymbol string `json:"native_currency_symbol"`
NativeCurrencyName string `json:"native_currency_name"`
BlockchainExplorer struct {
TransactionUrl string `json:"transaction_url"`
AddressUrl string `json:"address_url"`
RootUrl string `json:"root_url"`
TransactionFormatUrl string `json:"transaction_format_url"`
AddressFormatUrl string `json:"address_format_url"`
} `json:"blockchain_explorer"`
GasType string `json:"gas_type"`
SupportsSecureNode bool `json:"supports_secure_node"`
} `json:"dest_chain"`
} `json:"destination"`
Amount string `json:"amount"`
} `json:"bridge"`
} `json:"effects"`
} `json:"mined_result"`
GasSubmitted struct {
Price string `json:"price"`
Priority string `json:"priority"`
Limit string `json:"limit"`
Type string `json:"type"`
} `json:"gas_submitted"`
State string `json:"state"`
StateChanges []struct {
ChangedAt time.Time `json:"changed_at"`
Prices struct {
NativeCurrencyPrice struct {
Price string `json:"price"`
FiatCurrency struct {
CurrencySymbol string `json:"currency_symbol"`
Decimals int `json:"decimals"`
} `json:"fiat_currency"`
} `json:"native_currency_price"`
TokenPrices []struct {
Price string `json:"price"`
FiatCurrency struct {
CurrencySymbol string `json:"currency_symbol"`
Decimals int `json:"decimals"`
} `json:"fiat_currency"`
Token struct {
Address struct {
Chain struct {
ChainType string `json:"chain_type"`
NamedChainId string `json:"named_chain_id"`
ChainId int `json:"chain_id"`
UniqueId string `json:"unique_id"`
} `json:"chain"`
HexRepr string `json:"hex_repr"`
} `json:"address"`
Name string `json:"name"`
Symbol string `json:"symbol"`
Type string `json:"type"`
Decimals int `json:"decimals"`
LogoUrl string `json:"logo_url"`
} `json:"token"`
} `json:"token_prices"`
} `json:"prices"`
AssetPrices []struct {
AssetIdentifier struct {
Type string `json:"type"`
Details struct {
Chain struct {
ChainType string `json:"chain_type"`
UniqueId string `json:"unique_id"`
Name string `json:"name"`
NativeCurrencySymbol string `json:"native_currency_symbol"`
NativeCurrencyName string `json:"native_currency_name"`
BlockchainExplorer struct {
TransactionUrl string `json:"transaction_url"`
AddressUrl string `json:"address_url"`
RootUrl string `json:"root_url"`
TransactionFormatUrl string `json:"transaction_format_url"`
AddressFormatUrl string `json:"address_format_url"`
} `json:"blockchain_explorer"`
} `json:"chain"`
Type string `json:"type"`
Coin struct {
Type string `json:"type"`
Name string `json:"name"`
Symbol string `json:"symbol"`
Display string `json:"display"`
Description string `json:"description"`
Denom string `json:"denom"`
Decimals int `json:"decimals"`
LogoUrl string `json:"logo_url"`
ExplorerUrl string `json:"explorer_url"`
} `json:"coin"`
} `json:"details"`
} `json:"asset_identifier"`
Price struct {
Price string `json:"price"`
FiatCurrency struct {
CurrencySymbol string `json:"currency_symbol"`
Decimals int `json:"decimals"`
} `json:"fiat_currency"`
} `json:"price"`
} `json:"asset_prices"`
PreviousState string `json:"previous_state"`
NewState string `json:"new_state"`
} `json:"state_changes"`
ParentTransactionId string `json:"parent_transaction_id"`
ChildTransactionId string `json:"child_transaction_id"`
CurrentPrecedingPushedToBlockchainTransactionId string `json:"current_preceding_pushed_to_blockchain_transaction_id"`
IsCancelation bool `json:"is_cancelation"`
IsAcceleration bool `json:"is_acceleration"`
UseSecureNode bool `json:"use_secure_node"`
ExplorerUrl string `json:"explorer_url"`
}
type EvmTransferReq ¶
type EvmTransferReq struct {
SignerType string `json:"signer_type"`
Type string `json:"type"`
Details struct {
Type string `json:"type"`
Gas EvmGasOps `json:"gas"`
To string `json:"to"`
AssetIdentifier struct {
Type string `json:"type"`
Details map[string]interface{} `json:"details"`
} `json:"asset_identifier"`
Value struct {
Type string `json:"type"`
Value string `json:"value,omitempty"`
} `json:"value"`
} `json:"details"`
Note string `json:"note"`
VaultId string `json:"vault_id"`
}
func (*EvmTransferReq) PrepareForEvmTransfer ¶
func (r *EvmTransferReq) PrepareForEvmTransfer()
type EvmTxResp ¶
type EvmTxResp struct {
Id string `json:"id"`
CreatedAt time.Time `json:"created_at"`
ModifiedAt time.Time `json:"modified_at"`
ManagedTransactionData struct {
CreatedBy struct {
Id string `json:"id"`
UserType string `json:"user_type"`
Name string `json:"name"`
Email string `json:"email"`
State string `json:"state"`
Role string `json:"role"`
} `json:"created_by"`
AbortedBy struct {
Id string `json:"id"`
UserType string `json:"user_type"`
Name string `json:"name"`
Email string `json:"email"`
State string `json:"state"`
Role string `json:"role"`
} `json:"aborted_by"`
DeviceSigningRequest struct {
Signers []struct {
User struct {
Id string `json:"id"`
UserType string `json:"user_type"`
Name string `json:"name"`
Email string `json:"email"`
State string `json:"state"`
Role string `json:"role"`
} `json:"user"`
ModifiedAt time.Time `json:"modified_at"`
HasSigned bool `json:"has_signed"`
} `json:"signers"`
} `json:"device_signing_request"`
ApprovalRequest struct {
State string `json:"state"`
QuorumSize int `json:"quorum_size"`
Approvers []struct {
User struct {
Id string `json:"id"`
UserType string `json:"user_type"`
Name string `json:"name"`
Email string `json:"email"`
State string `json:"state"`
Role string `json:"role"`
} `json:"user"`
ModifiedAt time.Time `json:"modified_at"`
Decision string `json:"decision"`
State string `json:"state"`
} `json:"approvers"`
ApprovalGroups []struct {
QuorumSize int `json:"quorum_size"`
Approvers []struct {
User struct {
Id string `json:"id"`
UserType string `json:"user_type"`
Name string `json:"name"`
Email string `json:"email"`
State string `json:"state"`
Role string `json:"role"`
} `json:"user"`
ModifiedAt time.Time `json:"modified_at"`
Decision string `json:"decision"`
State string `json:"state"`
} `json:"approvers"`
} `json:"approval_groups"`
} `json:"approval_request"`
PolicyMatch struct {
IsDefault bool `json:"is_default"`
RuleId string `json:"rule_id"`
RuleName string `json:"rule_name"`
ActionType string `json:"action_type"`
} `json:"policy_match"`
SignedCreateRequest struct {
RawData string `json:"raw_data"`
TimestampSignature struct {
Signature string `json:"signature"`
Timestamp int `json:"timestamp"`
} `json:"timestamp_signature"`
UrlPath string `json:"url_path"`
} `json:"signed_create_request"`
SignerType string `json:"signer_type"`
Risks []struct {
Type string `json:"type"`
Severity string `json:"severity"`
Title string `json:"title"`
Description string `json:"description"`
} `json:"risks"`
ErrorPushingToBlockchainMessage string `json:"error_pushing_to_blockchain_message"`
OriginalErrorPushingToBlockchainMessage string `json:"original_error_pushing_to_blockchain_message"`
Vault struct {
Id string `json:"id"`
Name string `json:"name"`
Address string `json:"address"`
EndUser struct {
Id string `json:"id"`
UserType string `json:"user_type"`
ExternalId string `json:"external_id"`
State string `json:"state"`
} `json:"end_user"`
} `json:"vault"`
IdempotenceId string `json:"idempotence_id"`
} `json:"managed_transaction_data"`
Signatures []struct {
Data string `json:"data"`
SignedBy struct {
Id string `json:"id"`
UserType string `json:"user_type"`
Name string `json:"name"`
Email string `json:"email"`
State string `json:"state"`
Role string `json:"role"`
} `json:"signed_by"`
} `json:"signatures"`
Note string `json:"note"`
SpamState string `json:"spam_state"`
Type string `json:"type"`
EvmTransactionTypeDetails struct {
Type string `json:"type"`
Direction string `json:"direction"`
} `json:"evm_transaction_type_details"`
Chain struct {
ChainType string `json:"chain_type"`
NamedChainId string `json:"named_chain_id"`
ChainId int `json:"chain_id"`
UniqueId string `json:"unique_id"`
Name string `json:"name"`
NativeCurrencySymbol string `json:"native_currency_symbol"`
NativeCurrencyName string `json:"native_currency_name"`
BlockchainExplorer struct {
TransactionUrl string `json:"transaction_url"`
AddressUrl string `json:"address_url"`
RootUrl string `json:"root_url"`
TransactionFormatUrl string `json:"transaction_format_url"`
AddressFormatUrl string `json:"address_format_url"`
} `json:"blockchain_explorer"`
GasType string `json:"gas_type"`
SupportsSecureNode bool `json:"supports_secure_node"`
} `json:"chain"`
From struct {
Address string `json:"address"`
Vault struct {
Id string `json:"id"`
Name string `json:"name"`
Address string `json:"address"`
EndUser struct {
Id string `json:"id"`
UserType string `json:"user_type"`
ExternalId string `json:"external_id"`
State string `json:"state"`
} `json:"end_user"`
} `json:"vault"`
Contact struct {
Id string `json:"id"`
Name string `json:"name"`
AddressRef struct {
ChainType string `json:"chain_type"`
Address string `json:"address"`
Chains []struct {
ChainType string `json:"chain_type"`
NamedChainId string `json:"named_chain_id"`
ChainId int `json:"chain_id"`
UniqueId string `json:"unique_id"`
} `json:"chains"`
} `json:"address_ref"`
} `json:"contact"`
ExplorerUrl string `json:"explorer_url"`
Contract struct {
Name string `json:"name"`
Dapp struct {
Id string `json:"id"`
Name string `json:"name"`
Url string `json:"url"`
LogoUrl string `json:"logo_url"`
} `json:"dapp"`
IsVerified bool `json:"is_verified"`
Token struct {
Address struct {
Chain struct {
ChainType string `json:"chain_type"`
NamedChainId string `json:"named_chain_id"`
ChainId int `json:"chain_id"`
UniqueId string `json:"unique_id"`
} `json:"chain"`
HexRepr string `json:"hex_repr"`
} `json:"address"`
Name string `json:"name"`
Symbol string `json:"symbol"`
Type string `json:"type"`
Decimals int `json:"decimals"`
LogoUrl string `json:"logo_url"`
} `json:"token"`
} `json:"contract"`
} `json:"from"`
To struct {
Address string `json:"address"`
Vault struct {
Id string `json:"id"`
Name string `json:"name"`
Address string `json:"address"`
EndUser struct {
Id string `json:"id"`
UserType string `json:"user_type"`
ExternalId string `json:"external_id"`
State string `json:"state"`
} `json:"end_user"`
} `json:"vault"`
Contact struct {
Id string `json:"id"`
Name string `json:"name"`
AddressRef struct {
ChainType string `json:"chain_type"`
Address string `json:"address"`
Chains []struct {
ChainType string `json:"chain_type"`
NamedChainId string `json:"named_chain_id"`
ChainId int `json:"chain_id"`
UniqueId string `json:"unique_id"`
} `json:"chains"`
} `json:"address_ref"`
} `json:"contact"`
ExplorerUrl string `json:"explorer_url"`
Contract struct {
Name string `json:"name"`
Dapp struct {
Id string `json:"id"`
Name string `json:"name"`
Url string `json:"url"`
LogoUrl string `json:"logo_url"`
} `json:"dapp"`
IsVerified bool `json:"is_verified"`
Token struct {
Address struct {
Chain struct {
ChainType string `json:"chain_type"`
NamedChainId string `json:"named_chain_id"`
ChainId int `json:"chain_id"`
UniqueId string `json:"unique_id"`
} `json:"chain"`
HexRepr string `json:"hex_repr"`
} `json:"address"`
Name string `json:"name"`
Symbol string `json:"symbol"`
Type string `json:"type"`
Decimals int `json:"decimals"`
LogoUrl string `json:"logo_url"`
} `json:"token"`
} `json:"contract"`
} `json:"to"`
Value string `json:"value"`
Data string `json:"data"`
ParsedData struct {
Method string `json:"method"`
MethodArguments []struct {
Name string `json:"name"`
Type string `json:"type"`
Value string `json:"value"`
EnrichedAddress struct {
Address string `json:"address"`
Vault struct {
Id string `json:"id"`
Name string `json:"name"`
Address string `json:"address"`
EndUser struct {
Id string `json:"id"`
UserType string `json:"user_type"`
ExternalId string `json:"external_id"`
State string `json:"state"`
} `json:"end_user"`
} `json:"vault"`
Contact struct {
Id string `json:"id"`
Name string `json:"name"`
AddressRef struct {
ChainType string `json:"chain_type"`
Address string `json:"address"`
Chains []struct {
ChainType string `json:"chain_type"`
NamedChainId string `json:"named_chain_id"`
ChainId int `json:"chain_id"`
UniqueId string `json:"unique_id"`
} `json:"chains"`
} `json:"address_ref"`
} `json:"contact"`
ExplorerUrl string `json:"explorer_url"`
Contract struct {
Name string `json:"name"`
Dapp struct {
Id string `json:"id"`
Name string `json:"name"`
Url string `json:"url"`
LogoUrl string `json:"logo_url"`
} `json:"dapp"`
IsVerified bool `json:"is_verified"`
Token struct {
Address struct {
Chain struct {
ChainType string `json:"chain_type"`
NamedChainId string `json:"named_chain_id"`
ChainId int `json:"chain_id"`
UniqueId string `json:"unique_id"`
} `json:"chain"`
HexRepr string `json:"hex_repr"`
} `json:"address"`
Name string `json:"name"`
Symbol string `json:"symbol"`
Type string `json:"type"`
Decimals int `json:"decimals"`
LogoUrl string `json:"logo_url"`
} `json:"token"`
} `json:"contract"`
} `json:"enriched_address"`
} `json:"method_arguments"`
} `json:"parsed_data"`
Hash string `json:"hash"`
Nonce int `json:"nonce"`
Block struct {
Number int `json:"number"`
Hash string `json:"hash"`
MinedAt time.Time `json:"mined_at"`
} `json:"block"`
ExpectedResult struct {
Reversion struct {
State string `json:"state"`
Reason string `json:"reason"`
} `json:"reversion"`
GasDebit struct {
GasUsed string `json:"gas_used"`
GasPrice string `json:"gas_price"`
TotalFee string `json:"total_fee"`
} `json:"gas_debit"`
Effects struct {
BalanceChanges []struct {
Type string `json:"type"`
Address struct {
Address string `json:"address"`
Vault struct {
Id string `json:"id"`
Name string `json:"name"`
Address string `json:"address"`
EndUser struct {
Id string `json:"id"`
UserType string `json:"user_type"`
ExternalId string `json:"external_id"`
State string `json:"state"`
} `json:"end_user"`
} `json:"vault"`
Contact struct {
Id string `json:"id"`
Name string `json:"name"`
AddressRef struct {
ChainType string `json:"chain_type"`
Address string `json:"address"`
Chains []struct {
} `json:"chains"`
} `json:"address_ref"`
} `json:"contact"`
ExplorerUrl string `json:"explorer_url"`
Contract struct {
Name string `json:"name"`
Dapp struct {
Id string `json:"id"`
Name string `json:"name"`
Url string `json:"url"`
LogoUrl string `json:"logo_url"`
} `json:"dapp"`
IsVerified bool `json:"is_verified"`
Token struct {
Address struct {
Chain struct {
} `json:"chain"`
HexRepr string `json:"hex_repr"`
} `json:"address"`
Name string `json:"name"`
Symbol string `json:"symbol"`
Type string `json:"type"`
Decimals int `json:"decimals"`
LogoUrl string `json:"logo_url"`
} `json:"token"`
} `json:"contract"`
} `json:"address"`
Diff string `json:"diff"`
Price struct {
Price string `json:"price"`
FiatCurrency struct {
CurrencySymbol string `json:"currency_symbol"`
Decimals int `json:"decimals"`
} `json:"fiat_currency"`
} `json:"price"`
} `json:"balance_changes"`
Transfers []struct {
Type string `json:"type"`
From struct {
Address string `json:"address"`
Vault struct {
Id string `json:"id"`
Name string `json:"name"`
Address string `json:"address"`
EndUser struct {
Id string `json:"id"`
UserType string `json:"user_type"`
ExternalId string `json:"external_id"`
State string `json:"state"`
} `json:"end_user"`
} `json:"vault"`
Contact struct {
Id string `json:"id"`
Name string `json:"name"`
AddressRef struct {
ChainType string `json:"chain_type"`
Address string `json:"address"`
Chains []struct {
} `json:"chains"`
} `json:"address_ref"`
} `json:"contact"`
ExplorerUrl string `json:"explorer_url"`
Contract struct {
Name string `json:"name"`
Dapp struct {
Id string `json:"id"`
Name string `json:"name"`
Url string `json:"url"`
LogoUrl string `json:"logo_url"`
} `json:"dapp"`
IsVerified bool `json:"is_verified"`
Token struct {
Address struct {
Chain struct {
} `json:"chain"`
HexRepr string `json:"hex_repr"`
} `json:"address"`
Name string `json:"name"`
Symbol string `json:"symbol"`
Type string `json:"type"`
Decimals int `json:"decimals"`
LogoUrl string `json:"logo_url"`
} `json:"token"`
} `json:"contract"`
} `json:"from"`
To struct {
Address string `json:"address"`
Vault struct {
Id string `json:"id"`
Name string `json:"name"`
Address string `json:"address"`
EndUser struct {
Id string `json:"id"`
UserType string `json:"user_type"`
ExternalId string `json:"external_id"`
State string `json:"state"`
} `json:"end_user"`
} `json:"vault"`
Contact struct {
Id string `json:"id"`
Name string `json:"name"`
AddressRef struct {
ChainType string `json:"chain_type"`
Address string `json:"address"`
Chains []struct {
} `json:"chains"`
} `json:"address_ref"`
} `json:"contact"`
ExplorerUrl string `json:"explorer_url"`
Contract struct {
Name string `json:"name"`
Dapp struct {
Id string `json:"id"`
Name string `json:"name"`
Url string `json:"url"`
LogoUrl string `json:"logo_url"`
} `json:"dapp"`
IsVerified bool `json:"is_verified"`
Token struct {
Address struct {
Chain struct {
} `json:"chain"`
HexRepr string `json:"hex_repr"`
} `json:"address"`
Name string `json:"name"`
Symbol string `json:"symbol"`
Type string `json:"type"`
Decimals int `json:"decimals"`
LogoUrl string `json:"logo_url"`
} `json:"token"`
} `json:"contract"`
} `json:"to"`
Amount string `json:"amount"`
Price struct {
Price string `json:"price"`
FiatCurrency struct {
CurrencySymbol string `json:"currency_symbol"`
Decimals int `json:"decimals"`
} `json:"fiat_currency"`
} `json:"price"`
} `json:"transfers"`
Allowances []struct {
Type string `json:"type"`
Owner struct {
Address string `json:"address"`
Vault struct {
Id string `json:"id"`
Name string `json:"name"`
Address string `json:"address"`
EndUser struct {
Id string `json:"id"`
UserType string `json:"user_type"`
ExternalId string `json:"external_id"`
State string `json:"state"`
} `json:"end_user"`
} `json:"vault"`
Contact struct {
Id string `json:"id"`
Name string `json:"name"`
AddressRef struct {
ChainType string `json:"chain_type"`
Address string `json:"address"`
Chains []struct {
} `json:"chains"`
} `json:"address_ref"`
} `json:"contact"`
ExplorerUrl string `json:"explorer_url"`
Contract struct {
Name string `json:"name"`
Dapp struct {
Id string `json:"id"`
Name string `json:"name"`
Url string `json:"url"`
LogoUrl string `json:"logo_url"`
} `json:"dapp"`
IsVerified bool `json:"is_verified"`
Token struct {
Address struct {
Chain struct {
} `json:"chain"`
HexRepr string `json:"hex_repr"`
} `json:"address"`
Name string `json:"name"`
Symbol string `json:"symbol"`
Type string `json:"type"`
Decimals int `json:"decimals"`
LogoUrl string `json:"logo_url"`
} `json:"token"`
} `json:"contract"`
} `json:"owner"`
Spender struct {
Address string `json:"address"`
Vault struct {
Id string `json:"id"`
Name string `json:"name"`
Address string `json:"address"`
EndUser struct {
Id string `json:"id"`
UserType string `json:"user_type"`
ExternalId string `json:"external_id"`
State string `json:"state"`
} `json:"end_user"`
} `json:"vault"`
Contact struct {
Id string `json:"id"`
Name string `json:"name"`
AddressRef struct {
ChainType string `json:"chain_type"`
Address string `json:"address"`
Chains []struct {
} `json:"chains"`
} `json:"address_ref"`
} `json:"contact"`
ExplorerUrl string `json:"explorer_url"`
Contract struct {
Name string `json:"name"`
Dapp struct {
Id string `json:"id"`
Name string `json:"name"`
Url string `json:"url"`
LogoUrl string `json:"logo_url"`
} `json:"dapp"`
IsVerified bool `json:"is_verified"`
Token struct {
Address struct {
Chain struct {
} `json:"chain"`
HexRepr string `json:"hex_repr"`
} `json:"address"`
Name string `json:"name"`
Symbol string `json:"symbol"`
Type string `json:"type"`
Decimals int `json:"decimals"`
LogoUrl string `json:"logo_url"`
} `json:"token"`
} `json:"contract"`
} `json:"spender"`
Amount string `json:"amount"`
TokenContract struct {
Name string `json:"name"`
Dapp struct {
Id string `json:"id"`
Name string `json:"name"`
Url string `json:"url"`
LogoUrl string `json:"logo_url"`
} `json:"dapp"`
IsVerified bool `json:"is_verified"`
Token struct {
Address struct {
Chain struct {
ChainType string `json:"chain_type"`
NamedChainId string `json:"named_chain_id"`
ChainId int `json:"chain_id"`
UniqueId string `json:"unique_id"`
} `json:"chain"`
HexRepr string `json:"hex_repr"`
} `json:"address"`
Name string `json:"name"`
Symbol string `json:"symbol"`
Type string `json:"type"`
Decimals int `json:"decimals"`
LogoUrl string `json:"logo_url"`
} `json:"token"`
} `json:"token_contract"`
Price struct {
Price string `json:"price"`
FiatCurrency struct {
CurrencySymbol string `json:"currency_symbol"`
Decimals int `json:"decimals"`
} `json:"fiat_currency"`
} `json:"price"`
} `json:"allowances"`
Bridge []struct {
BridgeName string `json:"bridge_name"`
Source struct {
Type string `json:"type"`
SourceAddress struct {
Address string `json:"address"`
Vault struct {
Id string `json:"id"`
Name string `json:"name"`
Address string `json:"address"`
EndUser struct {
Id string `json:"id"`
UserType string `json:"user_type"`
ExternalId string `json:"external_id"`
State string `json:"state"`
} `json:"end_user"`
} `json:"vault"`
Contact struct {
Id string `json:"id"`
Name string `json:"name"`
AddressRef struct {
ChainType string `json:"chain_type"`
Address string `json:"address"`
Chains []interface{} `json:"chains"`
} `json:"address_ref"`
} `json:"contact"`
ExplorerUrl string `json:"explorer_url"`
Contract struct {
Name string `json:"name"`
Dapp struct {
Id string `json:"id"`
Name string `json:"name"`
Url string `json:"url"`
LogoUrl string `json:"logo_url"`
} `json:"dapp"`
IsVerified bool `json:"is_verified"`
Token struct {
Address struct {
} `json:"address"`
Name string `json:"name"`
Symbol string `json:"symbol"`
Type string `json:"type"`
Decimals int `json:"decimals"`
LogoUrl string `json:"logo_url"`
} `json:"token"`
} `json:"contract"`
} `json:"source_address"`
Price struct {
Price string `json:"price"`
FiatCurrency struct {
CurrencySymbol string `json:"currency_symbol"`
Decimals int `json:"decimals"`
} `json:"fiat_currency"`
} `json:"price"`
} `json:"source"`
Destination struct {
Type string `json:"type"`
DestAddress struct {
Address string `json:"address"`
Vault struct {
Id string `json:"id"`
Name string `json:"name"`
Address string `json:"address"`
EndUser struct {
Id string `json:"id"`
UserType string `json:"user_type"`
ExternalId string `json:"external_id"`
State string `json:"state"`
} `json:"end_user"`
} `json:"vault"`
Contact struct {
Id string `json:"id"`
Name string `json:"name"`
AddressRef struct {
ChainType string `json:"chain_type"`
Address string `json:"address"`
Chains []interface{} `json:"chains"`
} `json:"address_ref"`
} `json:"contact"`
ExplorerUrl string `json:"explorer_url"`
Contract struct {
Name string `json:"name"`
Dapp struct {
Id string `json:"id"`
Name string `json:"name"`
Url string `json:"url"`
LogoUrl string `json:"logo_url"`
} `json:"dapp"`
IsVerified bool `json:"is_verified"`
Token struct {
Address struct {
} `json:"address"`
Name string `json:"name"`
Symbol string `json:"symbol"`
Type string `json:"type"`
Decimals int `json:"decimals"`
LogoUrl string `json:"logo_url"`
} `json:"token"`
} `json:"contract"`
} `json:"dest_address"`
DestChain struct {
ChainType string `json:"chain_type"`
NamedChainId string `json:"named_chain_id"`
ChainId int `json:"chain_id"`
UniqueId string `json:"unique_id"`
Name string `json:"name"`
NativeCurrencySymbol string `json:"native_currency_symbol"`
NativeCurrencyName string `json:"native_currency_name"`
BlockchainExplorer struct {
TransactionUrl string `json:"transaction_url"`
AddressUrl string `json:"address_url"`
RootUrl string `json:"root_url"`
TransactionFormatUrl string `json:"transaction_format_url"`
AddressFormatUrl string `json:"address_format_url"`
} `json:"blockchain_explorer"`
GasType string `json:"gas_type"`
SupportsSecureNode bool `json:"supports_secure_node"`
} `json:"dest_chain"`
} `json:"destination"`
Amount string `json:"amount"`
} `json:"bridge"`
} `json:"effects"`
} `json:"expected_result"`
SimulationStatusResult struct {
SimulationStatus string `json:"simulation_status"`
Details string `json:"details"`
} `json:"simulation_status_result"`
MinedResult struct {
Reversion struct {
State string `json:"state"`
Reason string `json:"reason"`
} `json:"reversion"`
GasDebit struct {
GasUsed string `json:"gas_used"`
GasPrice string `json:"gas_price"`
TotalFee string `json:"total_fee"`
} `json:"gas_debit"`
Effects struct {
BalanceChanges []struct {
Type string `json:"type"`
Address struct {
Address string `json:"address"`
Vault struct {
Id string `json:"id"`
Name string `json:"name"`
Address string `json:"address"`
EndUser struct {
Id string `json:"id"`
UserType string `json:"user_type"`
ExternalId string `json:"external_id"`
State string `json:"state"`
} `json:"end_user"`
} `json:"vault"`
Contact struct {
Id string `json:"id"`
Name string `json:"name"`
AddressRef struct {
ChainType string `json:"chain_type"`
Address string `json:"address"`
Chains []struct {
} `json:"chains"`
} `json:"address_ref"`
} `json:"contact"`
ExplorerUrl string `json:"explorer_url"`
Contract struct {
Name string `json:"name"`
Dapp struct {
Id string `json:"id"`
Name string `json:"name"`
Url string `json:"url"`
LogoUrl string `json:"logo_url"`
} `json:"dapp"`
IsVerified bool `json:"is_verified"`
Token struct {
Address struct {
Chain struct {
} `json:"chain"`
HexRepr string `json:"hex_repr"`
} `json:"address"`
Name string `json:"name"`
Symbol string `json:"symbol"`
Type string `json:"type"`
Decimals int `json:"decimals"`
LogoUrl string `json:"logo_url"`
} `json:"token"`
} `json:"contract"`
} `json:"address"`
Diff string `json:"diff"`
Price struct {
Price string `json:"price"`
FiatCurrency struct {
CurrencySymbol string `json:"currency_symbol"`
Decimals int `json:"decimals"`
} `json:"fiat_currency"`
} `json:"price"`
} `json:"balance_changes"`
Transfers []struct {
Type string `json:"type"`
From struct {
Address string `json:"address"`
Vault struct {
Id string `json:"id"`
Name string `json:"name"`
Address string `json:"address"`
EndUser struct {
Id string `json:"id"`
UserType string `json:"user_type"`
ExternalId string `json:"external_id"`
State string `json:"state"`
} `json:"end_user"`
} `json:"vault"`
Contact struct {
Id string `json:"id"`
Name string `json:"name"`
AddressRef struct {
ChainType string `json:"chain_type"`
Address string `json:"address"`
Chains []struct {
} `json:"chains"`
} `json:"address_ref"`
} `json:"contact"`
ExplorerUrl string `json:"explorer_url"`
Contract struct {
Name string `json:"name"`
Dapp struct {
Id string `json:"id"`
Name string `json:"name"`
Url string `json:"url"`
LogoUrl string `json:"logo_url"`
} `json:"dapp"`
IsVerified bool `json:"is_verified"`
Token struct {
Address struct {
Chain struct {
} `json:"chain"`
HexRepr string `json:"hex_repr"`
} `json:"address"`
Name string `json:"name"`
Symbol string `json:"symbol"`
Type string `json:"type"`
Decimals int `json:"decimals"`
LogoUrl string `json:"logo_url"`
} `json:"token"`
} `json:"contract"`
} `json:"from"`
To struct {
Address string `json:"address"`
Vault struct {
Id string `json:"id"`
Name string `json:"name"`
Address string `json:"address"`
EndUser struct {
Id string `json:"id"`
UserType string `json:"user_type"`
ExternalId string `json:"external_id"`
State string `json:"state"`
} `json:"end_user"`
} `json:"vault"`
Contact struct {
Id string `json:"id"`
Name string `json:"name"`
AddressRef struct {
ChainType string `json:"chain_type"`
Address string `json:"address"`
Chains []struct {
} `json:"chains"`
} `json:"address_ref"`
} `json:"contact"`
ExplorerUrl string `json:"explorer_url"`
Contract struct {
Name string `json:"name"`
Dapp struct {
Id string `json:"id"`
Name string `json:"name"`
Url string `json:"url"`
LogoUrl string `json:"logo_url"`
} `json:"dapp"`
IsVerified bool `json:"is_verified"`
Token struct {
Address struct {
Chain struct {
} `json:"chain"`
HexRepr string `json:"hex_repr"`
} `json:"address"`
Name string `json:"name"`
Symbol string `json:"symbol"`
Type string `json:"type"`
Decimals int `json:"decimals"`
LogoUrl string `json:"logo_url"`
} `json:"token"`
} `json:"contract"`
} `json:"to"`
Amount string `json:"amount"`
Price struct {
Price string `json:"price"`
FiatCurrency struct {
CurrencySymbol string `json:"currency_symbol"`
Decimals int `json:"decimals"`
} `json:"fiat_currency"`
} `json:"price"`
} `json:"transfers"`
Allowances []struct {
Type string `json:"type"`
Owner struct {
Address string `json:"address"`
Vault struct {
Id string `json:"id"`
Name string `json:"name"`
Address string `json:"address"`
EndUser struct {
Id string `json:"id"`
UserType string `json:"user_type"`
ExternalId string `json:"external_id"`
State string `json:"state"`
} `json:"end_user"`
} `json:"vault"`
Contact struct {
Id string `json:"id"`
Name string `json:"name"`
AddressRef struct {
ChainType string `json:"chain_type"`
Address string `json:"address"`
Chains []struct {
} `json:"chains"`
} `json:"address_ref"`
} `json:"contact"`
ExplorerUrl string `json:"explorer_url"`
Contract struct {
Name string `json:"name"`
Dapp struct {
Id string `json:"id"`
Name string `json:"name"`
Url string `json:"url"`
LogoUrl string `json:"logo_url"`
} `json:"dapp"`
IsVerified bool `json:"is_verified"`
Token struct {
Address struct {
Chain struct {
} `json:"chain"`
HexRepr string `json:"hex_repr"`
} `json:"address"`
Name string `json:"name"`
Symbol string `json:"symbol"`
Type string `json:"type"`
Decimals int `json:"decimals"`
LogoUrl string `json:"logo_url"`
} `json:"token"`
} `json:"contract"`
} `json:"owner"`
Spender struct {
Address string `json:"address"`
Vault struct {
Id string `json:"id"`
Name string `json:"name"`
Address string `json:"address"`
EndUser struct {
Id string `json:"id"`
UserType string `json:"user_type"`
ExternalId string `json:"external_id"`
State string `json:"state"`
} `json:"end_user"`
} `json:"vault"`
Contact struct {
Id string `json:"id"`
Name string `json:"name"`
AddressRef struct {
ChainType string `json:"chain_type"`
Address string `json:"address"`
Chains []struct {
} `json:"chains"`
} `json:"address_ref"`
} `json:"contact"`
ExplorerUrl string `json:"explorer_url"`
Contract struct {
Name string `json:"name"`
Dapp struct {
Id string `json:"id"`
Name string `json:"name"`
Url string `json:"url"`
LogoUrl string `json:"logo_url"`
} `json:"dapp"`
IsVerified bool `json:"is_verified"`
Token struct {
Address struct {
Chain struct {
} `json:"chain"`
HexRepr string `json:"hex_repr"`
} `json:"address"`
Name string `json:"name"`
Symbol string `json:"symbol"`
Type string `json:"type"`
Decimals int `json:"decimals"`
LogoUrl string `json:"logo_url"`
} `json:"token"`
} `json:"contract"`
} `json:"spender"`
Amount string `json:"amount"`
TokenContract struct {
Name string `json:"name"`
Dapp struct {
Id string `json:"id"`
Name string `json:"name"`
Url string `json:"url"`
LogoUrl string `json:"logo_url"`
} `json:"dapp"`
IsVerified bool `json:"is_verified"`
Token struct {
Address struct {
Chain struct {
ChainType string `json:"chain_type"`
NamedChainId string `json:"named_chain_id"`
ChainId int `json:"chain_id"`
UniqueId string `json:"unique_id"`
} `json:"chain"`
HexRepr string `json:"hex_repr"`
} `json:"address"`
Name string `json:"name"`
Symbol string `json:"symbol"`
Type string `json:"type"`
Decimals int `json:"decimals"`
LogoUrl string `json:"logo_url"`
} `json:"token"`
} `json:"token_contract"`
Price struct {
Price string `json:"price"`
FiatCurrency struct {
CurrencySymbol string `json:"currency_symbol"`
Decimals int `json:"decimals"`
} `json:"fiat_currency"`
} `json:"price"`
} `json:"allowances"`
Bridge []struct {
BridgeName string `json:"bridge_name"`
Source struct {
Type string `json:"type"`
SourceAddress struct {
Address string `json:"address"`
Vault struct {
Id string `json:"id"`
Name string `json:"name"`
Address string `json:"address"`
EndUser struct {
Id string `json:"id"`
UserType string `json:"user_type"`
ExternalId string `json:"external_id"`
State string `json:"state"`
} `json:"end_user"`
} `json:"vault"`
Contact struct {
Id string `json:"id"`
Name string `json:"name"`
AddressRef struct {
ChainType string `json:"chain_type"`
Address string `json:"address"`
Chains []interface{} `json:"chains"`
} `json:"address_ref"`
} `json:"contact"`
ExplorerUrl string `json:"explorer_url"`
Contract struct {
Name string `json:"name"`
Dapp struct {
Id string `json:"id"`
Name string `json:"name"`
Url string `json:"url"`
LogoUrl string `json:"logo_url"`
} `json:"dapp"`
IsVerified bool `json:"is_verified"`
Token struct {
Address struct {
} `json:"address"`
Name string `json:"name"`
Symbol string `json:"symbol"`
Type string `json:"type"`
Decimals int `json:"decimals"`
LogoUrl string `json:"logo_url"`
} `json:"token"`
} `json:"contract"`
} `json:"source_address"`
Price struct {
Price string `json:"price"`
FiatCurrency struct {
CurrencySymbol string `json:"currency_symbol"`
Decimals int `json:"decimals"`
} `json:"fiat_currency"`
} `json:"price"`
} `json:"source"`
Destination struct {
Type string `json:"type"`
DestAddress struct {
Address string `json:"address"`
Vault struct {
Id string `json:"id"`
Name string `json:"name"`
Address string `json:"address"`
EndUser struct {
Id string `json:"id"`
UserType string `json:"user_type"`
ExternalId string `json:"external_id"`
State string `json:"state"`
} `json:"end_user"`
} `json:"vault"`
Contact struct {
Id string `json:"id"`
Name string `json:"name"`
AddressRef struct {
ChainType string `json:"chain_type"`
Address string `json:"address"`
Chains []interface{} `json:"chains"`
} `json:"address_ref"`
} `json:"contact"`
ExplorerUrl string `json:"explorer_url"`
Contract struct {
Name string `json:"name"`
Dapp struct {
Id string `json:"id"`
Name string `json:"name"`
Url string `json:"url"`
LogoUrl string `json:"logo_url"`
} `json:"dapp"`
IsVerified bool `json:"is_verified"`
Token struct {
Address struct {
} `json:"address"`
Name string `json:"name"`
Symbol string `json:"symbol"`
Type string `json:"type"`
Decimals int `json:"decimals"`
LogoUrl string `json:"logo_url"`
} `json:"token"`
} `json:"contract"`
} `json:"dest_address"`
DestChain struct {
ChainType string `json:"chain_type"`
NamedChainId string `json:"named_chain_id"`
ChainId int `json:"chain_id"`
UniqueId string `json:"unique_id"`
Name string `json:"name"`
NativeCurrencySymbol string `json:"native_currency_symbol"`
NativeCurrencyName string `json:"native_currency_name"`
BlockchainExplorer struct {
TransactionUrl string `json:"transaction_url"`
AddressUrl string `json:"address_url"`
RootUrl string `json:"root_url"`
TransactionFormatUrl string `json:"transaction_format_url"`
AddressFormatUrl string `json:"address_format_url"`
} `json:"blockchain_explorer"`
GasType string `json:"gas_type"`
SupportsSecureNode bool `json:"supports_secure_node"`
} `json:"dest_chain"`
} `json:"destination"`
Amount string `json:"amount"`
} `json:"bridge"`
} `json:"effects"`
} `json:"mined_result"`
GasSubmitted struct {
Price string `json:"price"`
Priority string `json:"priority"`
Limit string `json:"limit"`
Type string `json:"type"`
} `json:"gas_submitted"`
State string `json:"state"`
StateChanges []struct {
ChangedAt time.Time `json:"changed_at"`
Prices struct {
NativeCurrencyPrice struct {
Price string `json:"price"`
FiatCurrency struct {
CurrencySymbol string `json:"currency_symbol"`
Decimals int `json:"decimals"`
} `json:"fiat_currency"`
} `json:"native_currency_price"`
TokenPrices []struct {
Price string `json:"price"`
FiatCurrency struct {
CurrencySymbol string `json:"currency_symbol"`
Decimals int `json:"decimals"`
} `json:"fiat_currency"`
Token struct {
Address struct {
Chain struct {
ChainType string `json:"chain_type"`
NamedChainId string `json:"named_chain_id"`
ChainId int `json:"chain_id"`
UniqueId string `json:"unique_id"`
} `json:"chain"`
HexRepr string `json:"hex_repr"`
} `json:"address"`
Name string `json:"name"`
Symbol string `json:"symbol"`
Type string `json:"type"`
Decimals int `json:"decimals"`
LogoUrl string `json:"logo_url"`
} `json:"token"`
} `json:"token_prices"`
} `json:"prices"`
AssetPrices []struct {
AssetIdentifier struct {
Type string `json:"type"`
Details struct {
Chain struct {
ChainType string `json:"chain_type"`
UniqueId string `json:"unique_id"`
Name string `json:"name"`
NativeCurrencySymbol string `json:"native_currency_symbol"`
NativeCurrencyName string `json:"native_currency_name"`
BlockchainExplorer struct {
TransactionUrl string `json:"transaction_url"`
AddressUrl string `json:"address_url"`
RootUrl string `json:"root_url"`
TransactionFormatUrl string `json:"transaction_format_url"`
AddressFormatUrl string `json:"address_format_url"`
} `json:"blockchain_explorer"`
BaseDenom string `json:"base_denom"`
} `json:"chain"`
Type string `json:"type"`
Coin struct {
Name string `json:"name"`
Symbol string `json:"symbol"`
Display string `json:"display"`
Description string `json:"description"`
BaseDenom string `json:"base_denom"`
Denom string `json:"denom"`
Decimals int `json:"decimals"`
LogoUrl string `json:"logo_url"`
ExplorerUrl string `json:"explorer_url"`
Type string `json:"type"`
} `json:"coin"`
} `json:"details"`
} `json:"asset_identifier"`
Price struct {
Price string `json:"price"`
FiatCurrency struct {
CurrencySymbol string `json:"currency_symbol"`
Decimals int `json:"decimals"`
} `json:"fiat_currency"`
} `json:"price"`
} `json:"asset_prices"`
PreviousState string `json:"previous_state"`
NewState string `json:"new_state"`
} `json:"state_changes"`
ParentTransactionId string `json:"parent_transaction_id"`
ChildTransactionId string `json:"child_transaction_id"`
CurrentPrecedingPushedToBlockchainTransactionId string `json:"current_preceding_pushed_to_blockchain_transaction_id"`
IsCancelation bool `json:"is_cancelation"`
IsAcceleration bool `json:"is_acceleration"`
UseSecureNode bool `json:"use_secure_node"`
ExplorerUrl string `json:"explorer_url"`
}
type ListChainResponse ¶
type ListChainResponse struct {
Chains []struct {
ChainType string `json:"chain_type"`
UniqueId string `json:"unique_id"`
Name string `json:"name"`
NativeCurrencySymbol string `json:"native_currency_symbol"`
NativeCurrencyName string `json:"native_currency_name"`
BlockchainExplorer struct {
TransactionUrl string `json:"transaction_url"`
AddressUrl string `json:"address_url"`
RootUrl string `json:"root_url"`
TransactionFormatUrl string `json:"transaction_format_url"`
AddressFormatUrl string `json:"address_format_url"`
} `json:"blockchain_explorer"`
BaseDenom string `json:"base_denom"`
} `json:"chains"`
}
type ListVaultsResp ¶
type ListVaultsResp struct {
Total int `json:"total"`
Page int `json:"page"`
Size int `json:"size"`
Vaults []struct {
Id string `json:"id"`
CreatedAt time.Time `json:"created_at"`
ModifiedAt time.Time `json:"modified_at"`
Name string `json:"name"`
CreatedBy struct {
Id string `json:"id"`
UserType string `json:"user_type"`
Name string `json:"name"`
Email string `json:"email"`
State string `json:"state"`
Role string `json:"role"`
} `json:"created_by"`
DerivationPath string `json:"derivation_path"`
PublicKeyCompressed string `json:"public_key_compressed"`
DerivationInfo struct {
DerivationPath string `json:"derivation_path"`
MasterPublicKey struct {
Id string `json:"id"`
Xpub string `json:"xpub"`
} `json:"master_public_key"`
} `json:"derivation_info"`
Keyset struct {
Id string `json:"id"`
Name string `json:"name"`
Scope string `json:"scope"`
} `json:"keyset"`
KeyHolder struct {
Id string `json:"id"`
UserType string `json:"user_type"`
ExternalId string `json:"external_id"`
State string `json:"state"`
} `json:"key_holder"`
VaultGroup struct {
Id string `json:"id"`
Name string `json:"name"`
VaultCount int `json:"vault_count"`
} `json:"vault_group"`
PendingVaultGroupAction struct {
Type string `json:"type"`
VaultGroupId string `json:"vault_group_id"`
VaultGroupName string `json:"vault_group_name"`
} `json:"pending_vault_group_action"`
Type string `json:"type"`
Details struct {
Type string `json:"type"`
PublicKey string `json:"public_key"`
StarkKey string `json:"stark_key"`
} `json:"details"`
} `json:"vaults"`
}
type SolanaTransactResp ¶
type SolanaTransactResp struct {
Id string `json:"id"`
CreatedAt time.Time `json:"created_at"`
ModifiedAt time.Time `json:"modified_at"`
ManagedTransactionData struct {
CreatedBy struct {
Id string `json:"id"`
UserType string `json:"user_type"`
Name string `json:"name"`
Email string `json:"email"`
State string `json:"state"`
Role string `json:"role"`
} `json:"created_by"`
AbortedBy struct {
Id string `json:"id"`
UserType string `json:"user_type"`
Name string `json:"name"`
Email string `json:"email"`
State string `json:"state"`
Role string `json:"role"`
} `json:"aborted_by"`
DeviceSigningRequest struct {
Signers []struct {
User struct {
Id string `json:"id"`
UserType string `json:"user_type"`
Name string `json:"name"`
Email string `json:"email"`
State string `json:"state"`
Role string `json:"role"`
} `json:"user"`
ModifiedAt time.Time `json:"modified_at"`
HasSigned bool `json:"has_signed"`
} `json:"signers"`
} `json:"device_signing_request"`
ApprovalRequest struct {
State string `json:"state"`
QuorumSize int `json:"quorum_size"`
Approvers []struct {
User struct {
Id string `json:"id"`
UserType string `json:"user_type"`
Name string `json:"name"`
Email string `json:"email"`
State string `json:"state"`
Role string `json:"role"`
} `json:"user"`
ModifiedAt time.Time `json:"modified_at"`
Decision string `json:"decision"`
} `json:"approvers"`
ApprovalGroups []struct {
QuorumSize int `json:"quorum_size"`
Approvers []struct {
User struct {
Id string `json:"id"`
UserType string `json:"user_type"`
Name string `json:"name"`
Email string `json:"email"`
State string `json:"state"`
Role string `json:"role"`
} `json:"user"`
ModifiedAt time.Time `json:"modified_at"`
Decision string `json:"decision"`
} `json:"approvers"`
} `json:"approval_groups"`
} `json:"approval_request"`
PolicyMatch struct {
IsDefault bool `json:"is_default"`
RuleId string `json:"rule_id"`
RuleName string `json:"rule_name"`
ActionType string `json:"action_type"`
} `json:"policy_match"`
SignedCreateRequest struct {
RawData string `json:"raw_data"`
TimestampSignature struct {
Signature string `json:"signature"`
Timestamp int `json:"timestamp"`
} `json:"timestamp_signature"`
UrlPath string `json:"url_path"`
} `json:"signed_create_request"`
SignerType string `json:"signer_type"`
Risks []struct {
Type string `json:"type"`
Severity string `json:"severity"`
Title string `json:"title"`
Description string `json:"description"`
} `json:"risks"`
ErrorPushingToBlockchainMessage string `json:"error_pushing_to_blockchain_message"`
OriginalErrorPushingToBlockchainMessage string `json:"original_error_pushing_to_blockchain_message"`
Vault struct {
Id string `json:"id"`
Name string `json:"name"`
Address string `json:"address"`
EndUser struct {
Id string `json:"id"`
UserType string `json:"user_type"`
ExternalId string `json:"external_id"`
State string `json:"state"`
} `json:"end_user"`
} `json:"vault"`
IdempotenceId string `json:"idempotence_id"`
} `json:"managed_transaction_data"`
Signatures []struct {
Data string `json:"data"`
SignedBy struct {
Id string `json:"id"`
UserType string `json:"user_type"`
Name string `json:"name"`
Email string `json:"email"`
State string `json:"state"`
Role string `json:"role"`
} `json:"signed_by"`
} `json:"signatures"`
Note string `json:"note"`
SpamState string `json:"spam_state"`
Type string `json:"type"`
SolanaTransactionTypeDetails struct {
Type string `json:"type"`
Direction string `json:"direction"`
Sender struct {
Address string `json:"address"`
Vault struct {
Id string `json:"id"`
Name string `json:"name"`
Address string `json:"address"`
EndUser struct {
Id string `json:"id"`
UserType string `json:"user_type"`
ExternalId string `json:"external_id"`
State string `json:"state"`
} `json:"end_user"`
} `json:"vault"`
ExplorerUrl string `json:"explorer_url"`
Contact struct {
Id string `json:"id"`
Name string `json:"name"`
AddressRef struct {
ChainType string `json:"chain_type"`
Address string `json:"address"`
Chains []struct {
ChainType string `json:"chain_type"`
NamedChainId string `json:"named_chain_id"`
ChainId int `json:"chain_id"`
UniqueId string `json:"unique_id"`
} `json:"chains"`
} `json:"address_ref"`
} `json:"contact"`
Contract struct {
Name string `json:"name"`
Dapp struct {
Id string `json:"id"`
Name string `json:"name"`
Url string `json:"url"`
LogoUrl string `json:"logo_url"`
} `json:"dapp"`
IsVerified bool `json:"is_verified"`
Token struct {
Type string `json:"type"`
Address struct {
Chain struct {
ChainType string `json:"chain_type"`
UniqueId string `json:"unique_id"`
} `json:"chain"`
Base58Repr string `json:"base58_repr"`
} `json:"address"`
Name string `json:"name"`
Symbol string `json:"symbol"`
Decimals int `json:"decimals"`
LogoUrl string `json:"logo_url"`
} `json:"token"`
} `json:"contract"`
} `json:"sender"`
Recipient struct {
Address string `json:"address"`
Vault struct {
Id string `json:"id"`
Name string `json:"name"`
Address string `json:"address"`
EndUser struct {
Id string `json:"id"`
UserType string `json:"user_type"`
ExternalId string `json:"external_id"`
State string `json:"state"`
} `json:"end_user"`
} `json:"vault"`
ExplorerUrl string `json:"explorer_url"`
Contact struct {
Id string `json:"id"`
Name string `json:"name"`
AddressRef struct {
ChainType string `json:"chain_type"`
Address string `json:"address"`
Chains []struct {
ChainType string `json:"chain_type"`
NamedChainId string `json:"named_chain_id"`
ChainId int `json:"chain_id"`
UniqueId string `json:"unique_id"`
} `json:"chains"`
} `json:"address_ref"`
} `json:"contact"`
Contract struct {
Name string `json:"name"`
Dapp struct {
Id string `json:"id"`
Name string `json:"name"`
Url string `json:"url"`
LogoUrl string `json:"logo_url"`
} `json:"dapp"`
IsVerified bool `json:"is_verified"`
Token struct {
Type string `json:"type"`
Address struct {
Chain struct {
ChainType string `json:"chain_type"`
UniqueId string `json:"unique_id"`
} `json:"chain"`
Base58Repr string `json:"base58_repr"`
} `json:"address"`
Name string `json:"name"`
Symbol string `json:"symbol"`
Decimals int `json:"decimals"`
LogoUrl string `json:"logo_url"`
} `json:"token"`
} `json:"contract"`
} `json:"recipient"`
} `json:"solana_transaction_type_details"`
Chain struct {
ChainType string `json:"chain_type"`
UniqueId string `json:"unique_id"`
Name string `json:"name"`
NativeCurrencySymbol string `json:"native_currency_symbol"`
NativeCurrencyName string `json:"native_currency_name"`
BlockchainExplorer struct {
TransactionUrl string `json:"transaction_url"`
AddressUrl string `json:"address_url"`
RootUrl string `json:"root_url"`
TransactionFormatUrl string `json:"transaction_format_url"`
AddressFormatUrl string `json:"address_format_url"`
} `json:"blockchain_explorer"`
} `json:"chain"`
State string `json:"state"`
StateChanges []struct {
ChangedAt time.Time `json:"changed_at"`
AssetPrices []struct {
AssetIdentifier struct {
Type string `json:"type"`
Details struct {
Chain struct {
ChainType string `json:"chain_type"`
UniqueId string `json:"unique_id"`
Name string `json:"name"`
NativeCurrencySymbol string `json:"native_currency_symbol"`
NativeCurrencyName string `json:"native_currency_name"`
BlockchainExplorer struct {
TransactionUrl string `json:"transaction_url"`
AddressUrl string `json:"address_url"`
RootUrl string `json:"root_url"`
TransactionFormatUrl string `json:"transaction_format_url"`
AddressFormatUrl string `json:"address_format_url"`
} `json:"blockchain_explorer"`
} `json:"chain"`
Type string `json:"type"`
Coin struct {
Type string `json:"type"`
Name string `json:"name"`
Symbol string `json:"symbol"`
Display string `json:"display"`
Description string `json:"description"`
Denom string `json:"denom"`
Decimals int `json:"decimals"`
LogoUrl string `json:"logo_url"`
ExplorerUrl string `json:"explorer_url"`
} `json:"coin"`
} `json:"details"`
} `json:"asset_identifier"`
Price struct {
Price string `json:"price"`
FiatCurrency struct {
CurrencySymbol string `json:"currency_symbol"`
Decimals int `json:"decimals"`
} `json:"fiat_currency"`
} `json:"price"`
} `json:"asset_prices"`
PreviousState string `json:"previous_state"`
NewState string `json:"new_state"`
} `json:"state_changes"`
Version string `json:"version"`
Instructions []struct {
ProgramIndex int `json:"program_index"`
Data string `json:"data"`
AccountIndexes []int `json:"account_indexes"`
} `json:"instructions"`
Accounts []struct {
Address struct {
Address string `json:"address"`
Vault struct {
Id string `json:"id"`
Name string `json:"name"`
Address string `json:"address"`
EndUser struct {
Id string `json:"id"`
UserType string `json:"user_type"`
ExternalId string `json:"external_id"`
State string `json:"state"`
} `json:"end_user"`
} `json:"vault"`
ExplorerUrl string `json:"explorer_url"`
Contact struct {
Id string `json:"id"`
Name string `json:"name"`
AddressRef struct {
ChainType string `json:"chain_type"`
Address string `json:"address"`
Chains []struct {
ChainType string `json:"chain_type"`
NamedChainId string `json:"named_chain_id"`
ChainId int `json:"chain_id"`
UniqueId string `json:"unique_id"`
} `json:"chains"`
} `json:"address_ref"`
} `json:"contact"`
Contract struct {
Name string `json:"name"`
Dapp struct {
Id string `json:"id"`
Name string `json:"name"`
Url string `json:"url"`
LogoUrl string `json:"logo_url"`
} `json:"dapp"`
IsVerified bool `json:"is_verified"`
Token struct {
Type string `json:"type"`
Address struct {
Chain struct {
ChainType string `json:"chain_type"`
UniqueId string `json:"unique_id"`
} `json:"chain"`
Base58Repr string `json:"base58_repr"`
} `json:"address"`
Name string `json:"name"`
Symbol string `json:"symbol"`
Decimals int `json:"decimals"`
LogoUrl string `json:"logo_url"`
} `json:"token"`
} `json:"contract"`
} `json:"address"`
Writable bool `json:"writable"`
Signer bool `json:"signer"`
} `json:"accounts"`
AddressTableLookups []struct {
AccountKey struct {
Chain struct {
ChainType string `json:"chain_type"`
UniqueId string `json:"unique_id"`
} `json:"chain"`
Base58Repr string `json:"base58_repr"`
} `json:"account_key"`
WritableIndexes []int `json:"writable_indexes"`
ReadonlyIndexes []int `json:"readonly_indexes"`
} `json:"address_table_lookups"`
Sender struct {
Address string `json:"address"`
Vault struct {
Id string `json:"id"`
Name string `json:"name"`
Address string `json:"address"`
EndUser struct {
Id string `json:"id"`
UserType string `json:"user_type"`
ExternalId string `json:"external_id"`
State string `json:"state"`
} `json:"end_user"`
} `json:"vault"`
ExplorerUrl string `json:"explorer_url"`
Contact struct {
Id string `json:"id"`
Name string `json:"name"`
AddressRef struct {
ChainType string `json:"chain_type"`
Address string `json:"address"`
Chains []struct {
ChainType string `json:"chain_type"`
NamedChainId string `json:"named_chain_id"`
ChainId int `json:"chain_id"`
UniqueId string `json:"unique_id"`
} `json:"chains"`
} `json:"address_ref"`
} `json:"contact"`
Contract struct {
Name string `json:"name"`
Dapp struct {
Id string `json:"id"`
Name string `json:"name"`
Url string `json:"url"`
LogoUrl string `json:"logo_url"`
} `json:"dapp"`
IsVerified bool `json:"is_verified"`
Token struct {
Type string `json:"type"`
Address struct {
Chain struct {
ChainType string `json:"chain_type"`
UniqueId string `json:"unique_id"`
} `json:"chain"`
Base58Repr string `json:"base58_repr"`
} `json:"address"`
Name string `json:"name"`
Symbol string `json:"symbol"`
Decimals int `json:"decimals"`
LogoUrl string `json:"logo_url"`
} `json:"token"`
} `json:"contract"`
} `json:"sender"`
Hash string `json:"hash"`
RecentBlockhash string `json:"recent_blockhash"`
Block struct {
Slot int `json:"slot"`
Hash string `json:"hash"`
MinedAt time.Time `json:"mined_at"`
} `json:"block"`
ExpectedResult struct {
TransactionError string `json:"transaction_error"`
Fee string `json:"fee"`
Effects struct {
BalanceChanges []struct {
Type string `json:"type"`
Address struct {
Address string `json:"address"`
Vault struct {
Id string `json:"id"`
Name string `json:"name"`
Address string `json:"address"`
EndUser struct {
Id string `json:"id"`
UserType string `json:"user_type"`
ExternalId string `json:"external_id"`
State string `json:"state"`
} `json:"end_user"`
} `json:"vault"`
ExplorerUrl string `json:"explorer_url"`
Contact struct {
Id string `json:"id"`
Name string `json:"name"`
AddressRef struct {
ChainType string `json:"chain_type"`
Address string `json:"address"`
Chains []struct {
} `json:"chains"`
} `json:"address_ref"`
} `json:"contact"`
Contract struct {
Name string `json:"name"`
Dapp struct {
Id string `json:"id"`
Name string `json:"name"`
Url string `json:"url"`
LogoUrl string `json:"logo_url"`
} `json:"dapp"`
IsVerified bool `json:"is_verified"`
Token struct {
Type string `json:"type"`
Address struct {
Chain struct {
} `json:"chain"`
Base58Repr string `json:"base58_repr"`
} `json:"address"`
Name string `json:"name"`
Symbol string `json:"symbol"`
Decimals int `json:"decimals"`
LogoUrl string `json:"logo_url"`
} `json:"token"`
} `json:"contract"`
} `json:"address"`
Diff string `json:"diff"`
Price struct {
Price string `json:"price"`
FiatCurrency struct {
CurrencySymbol string `json:"currency_symbol"`
Decimals int `json:"decimals"`
} `json:"fiat_currency"`
} `json:"price"`
} `json:"balance_changes"`
Transfers []struct {
Type string `json:"type"`
From struct {
Address string `json:"address"`
Vault struct {
Id string `json:"id"`
Name string `json:"name"`
Address string `json:"address"`
EndUser struct {
Id string `json:"id"`
UserType string `json:"user_type"`
ExternalId string `json:"external_id"`
State string `json:"state"`
} `json:"end_user"`
} `json:"vault"`
ExplorerUrl string `json:"explorer_url"`
Contact struct {
Id string `json:"id"`
Name string `json:"name"`
AddressRef struct {
ChainType string `json:"chain_type"`
Address string `json:"address"`
Chains []struct {
} `json:"chains"`
} `json:"address_ref"`
} `json:"contact"`
Contract struct {
Name string `json:"name"`
Dapp struct {
Id string `json:"id"`
Name string `json:"name"`
Url string `json:"url"`
LogoUrl string `json:"logo_url"`
} `json:"dapp"`
IsVerified bool `json:"is_verified"`
Token struct {
Type string `json:"type"`
Address struct {
Chain struct {
} `json:"chain"`
Base58Repr string `json:"base58_repr"`
} `json:"address"`
Name string `json:"name"`
Symbol string `json:"symbol"`
Decimals int `json:"decimals"`
LogoUrl string `json:"logo_url"`
} `json:"token"`
} `json:"contract"`
} `json:"from"`
To struct {
Address string `json:"address"`
Vault struct {
Id string `json:"id"`
Name string `json:"name"`
Address string `json:"address"`
EndUser struct {
Id string `json:"id"`
UserType string `json:"user_type"`
ExternalId string `json:"external_id"`
State string `json:"state"`
} `json:"end_user"`
} `json:"vault"`
ExplorerUrl string `json:"explorer_url"`
Contact struct {
Id string `json:"id"`
Name string `json:"name"`
AddressRef struct {
ChainType string `json:"chain_type"`
Address string `json:"address"`
Chains []struct {
} `json:"chains"`
} `json:"address_ref"`
} `json:"contact"`
Contract struct {
Name string `json:"name"`
Dapp struct {
Id string `json:"id"`
Name string `json:"name"`
Url string `json:"url"`
LogoUrl string `json:"logo_url"`
} `json:"dapp"`
IsVerified bool `json:"is_verified"`
Token struct {
Type string `json:"type"`
Address struct {
Chain struct {
} `json:"chain"`
Base58Repr string `json:"base58_repr"`
} `json:"address"`
Name string `json:"name"`
Symbol string `json:"symbol"`
Decimals int `json:"decimals"`
LogoUrl string `json:"logo_url"`
} `json:"token"`
} `json:"contract"`
} `json:"to"`
Amount string `json:"amount"`
Price struct {
Price string `json:"price"`
FiatCurrency struct {
CurrencySymbol string `json:"currency_symbol"`
Decimals int `json:"decimals"`
} `json:"fiat_currency"`
} `json:"price"`
} `json:"transfers"`
} `json:"effects"`
InstructionError struct {
ErrorType string `json:"error_type"`
InstructionIndex int `json:"instruction_index"`
ErrorDescription string `json:"error_description"`
} `json:"instruction_error"`
} `json:"expected_result"`
MinedResult struct {
TransactionError string `json:"transaction_error"`
Fee string `json:"fee"`
Effects struct {
BalanceChanges []struct {
Type string `json:"type"`
Address struct {
Address string `json:"address"`
Vault struct {
Id string `json:"id"`
Name string `json:"name"`
Address string `json:"address"`
EndUser struct {
Id string `json:"id"`
UserType string `json:"user_type"`
ExternalId string `json:"external_id"`
State string `json:"state"`
} `json:"end_user"`
} `json:"vault"`
ExplorerUrl string `json:"explorer_url"`
Contact struct {
Id string `json:"id"`
Name string `json:"name"`
AddressRef struct {
ChainType string `json:"chain_type"`
Address string `json:"address"`
Chains []struct {
} `json:"chains"`
} `json:"address_ref"`
} `json:"contact"`
Contract struct {
Name string `json:"name"`
Dapp struct {
Id string `json:"id"`
Name string `json:"name"`
Url string `json:"url"`
LogoUrl string `json:"logo_url"`
} `json:"dapp"`
IsVerified bool `json:"is_verified"`
Token struct {
Type string `json:"type"`
Address struct {
Chain struct {
} `json:"chain"`
Base58Repr string `json:"base58_repr"`
} `json:"address"`
Name string `json:"name"`
Symbol string `json:"symbol"`
Decimals int `json:"decimals"`
LogoUrl string `json:"logo_url"`
} `json:"token"`
} `json:"contract"`
} `json:"address"`
Diff string `json:"diff"`
Price struct {
Price string `json:"price"`
FiatCurrency struct {
CurrencySymbol string `json:"currency_symbol"`
Decimals int `json:"decimals"`
} `json:"fiat_currency"`
} `json:"price"`
} `json:"balance_changes"`
Transfers []struct {
Type string `json:"type"`
From struct {
Address string `json:"address"`
Vault struct {
Id string `json:"id"`
Name string `json:"name"`
Address string `json:"address"`
EndUser struct {
Id string `json:"id"`
UserType string `json:"user_type"`
ExternalId string `json:"external_id"`
State string `json:"state"`
} `json:"end_user"`
} `json:"vault"`
ExplorerUrl string `json:"explorer_url"`
Contact struct {
Id string `json:"id"`
Name string `json:"name"`
AddressRef struct {
ChainType string `json:"chain_type"`
Address string `json:"address"`
Chains []struct {
} `json:"chains"`
} `json:"address_ref"`
} `json:"contact"`
Contract struct {
Name string `json:"name"`
Dapp struct {
Id string `json:"id"`
Name string `json:"name"`
Url string `json:"url"`
LogoUrl string `json:"logo_url"`
} `json:"dapp"`
IsVerified bool `json:"is_verified"`
Token struct {
Type string `json:"type"`
Address struct {
Chain struct {
} `json:"chain"`
Base58Repr string `json:"base58_repr"`
} `json:"address"`
Name string `json:"name"`
Symbol string `json:"symbol"`
Decimals int `json:"decimals"`
LogoUrl string `json:"logo_url"`
} `json:"token"`
} `json:"contract"`
} `json:"from"`
To struct {
Address string `json:"address"`
Vault struct {
Id string `json:"id"`
Name string `json:"name"`
Address string `json:"address"`
EndUser struct {
Id string `json:"id"`
UserType string `json:"user_type"`
ExternalId string `json:"external_id"`
State string `json:"state"`
} `json:"end_user"`
} `json:"vault"`
ExplorerUrl string `json:"explorer_url"`
Contact struct {
Id string `json:"id"`
Name string `json:"name"`
AddressRef struct {
ChainType string `json:"chain_type"`
Address string `json:"address"`
Chains []struct {
} `json:"chains"`
} `json:"address_ref"`
} `json:"contact"`
Contract struct {
Name string `json:"name"`
Dapp struct {
Id string `json:"id"`
Name string `json:"name"`
Url string `json:"url"`
LogoUrl string `json:"logo_url"`
} `json:"dapp"`
IsVerified bool `json:"is_verified"`
Token struct {
Type string `json:"type"`
Address struct {
Chain struct {
} `json:"chain"`
Base58Repr string `json:"base58_repr"`
} `json:"address"`
Name string `json:"name"`
Symbol string `json:"symbol"`
Decimals int `json:"decimals"`
LogoUrl string `json:"logo_url"`
} `json:"token"`
} `json:"contract"`
} `json:"to"`
Amount string `json:"amount"`
Price struct {
Price string `json:"price"`
FiatCurrency struct {
CurrencySymbol string `json:"currency_symbol"`
Decimals int `json:"decimals"`
} `json:"fiat_currency"`
} `json:"price"`
} `json:"transfers"`
} `json:"effects"`
InstructionError struct {
ErrorType string `json:"error_type"`
InstructionIndex int `json:"instruction_index"`
ErrorDescription string `json:"error_description"`
} `json:"instruction_error"`
} `json:"mined_result"`
ExplorerUrl string `json:"explorer_url"`
}
type SolanaTransferReq ¶
type SolanaTransferReq struct {
SignerType string `json:"signer_type"`
Type string `json:"type"`
Details struct {
Type string `json:"type"`
To string `json:"to"`
Value struct {
Type string `json:"type"`
Value string `json:"value"`
} `json:"value"`
AssetIdentifier struct {
Type string `json:"type"`
Details map[string]interface{} `json:"details"`
} `json:"asset_identifier"`
} `json:"details"`
Note string `json:"note"`
VaultId string `json:"vault_id"`
}
func (*SolanaTransferReq) PrepareForSolanaTransfer ¶
func (r *SolanaTransferReq) PrepareForSolanaTransfer()