Address

Represents the public key portion of the asymmetric key thats derived from the io.vault MPC TSS cryptography; It also contains balance information, making this query common for tracking balances.
Fields for Address

Name Description
id (ID!) No description
createdAt (DateTime!) No description
publicKey (String!) The cryptographic public key of the address on a blockchain
explorerUri (String!) No description
asset (Asset!) The asset associated with the address
vault (Vault!) The vault associated with the address
balance (Decimal!) The balance of the address in non unit format (ex 21.1020)

Asset

Asset represents currencies secured by your io.vault. By default, the native assets for the supported networks such as BTC & ETH already exist; and assets that are more dynamic such as ERC20 or equivalent are dynamically added to the dataset once they are witnessed to be received by a vault.
Fields for Asset

Name Description
id (ID!) No description
createdAt (DateTime!) No description
updatedAt (DateTime!) No description
deletedAt (DateTime) No description
name (String!) No description
symbol (String!) No description
contractAddress (String!) No description
contractType (ContractType!) No description
explorerUri (String!) No description
executionType (String!) No description
logoUri (String) No description
decimals (Int!) No description
rate (Decimal!) No description

Config

Global configuration is used to inform the UI and API users of dynamic variables.
Fields for Config

Name Description
minimumThreshold (Int!) No description
maximumThreshold (Int!) No description

ConnectionPageInfo

No description
Fields for ConnectionPageInfo

Name Description
startCursor (String!) No description
endCursor (String!) No description
hasNextPage (Boolean!) No description
hasPreviousPage (Boolean!) No description

Device

Represents a users device. Currently this can be either a mobile device or a virtual signer.
Fields for Device

Name Description
id (ID!) Unique ID used to identify a mobile device or virtual signer. CUID Format.
uuid (String!) Unique device ID intended to be provided by the device OS.
createdAt (DateTime!) No description
deletedAt (DateTime) No description
name (String!) Model or name of the device intended to be provided by the device OS. For UX identification purposes.
organisationId (String!) Unique ID used to identify an organisation. CUID Format.
user (User!) User that owns the device
publicKey (String!) Public key for secure device-to-device communications encryption
algorithm (EncryptionAlgorithm!) No description
type (DeviceType!) No description

IndexerStatus

Sync status of a blockchain; lastSyncedHeight displays the most recently witnessed block height of the blockchain.
Fields for IndexerStatus

Name Description
id (ID!) No description
lastSyncedHeight (Int!) No description
metadata (JSON!) No description

NotificationItemConnection

No description
Fields for NotificationItemConnection

Name Description
edges (NotificationItemConnetionEdge!) No description
pageInfo (ConnectionPageInfo!) No description

NotificationItemConnetionEdge

No description
Fields for NotificationItemConnetionEdge

Name Description
cursor (String!) No description
node (NotificationItem!) No description

OperationAllowAddr

No description
Fields for OperationAllowAddr

Name Description
allowedAddressHash (String!) No description
allowedVaultAddress (Address) No description
id (ID!) No description
createdAt (DateTime!) No description
createdBy (User!) User that submitted the operation
minedAt (DateTime) No description
status (OperationStatus!) Status of the transaction request
raw (String) No description
blockHeight (Int) No description
transactionHash (String) No description
explorerUri (String) No description
voting (VotingProgress!) No description
memo (String) Memo of the operation
fromVaultAddress (Address!) No description

OperationBurn

No description
Fields for OperationBurn

Name Description
id (ID!) No description
createdAt (DateTime!) No description
createdBy (User!) User that submitted the operation
minedAt (DateTime) No description
status (OperationStatus!) Status of the transaction request
amount (Decimal!) No description
raw (String) No description
fees (Decimal) Fees spent to execute the transaction in non unit format
blockHeight (Int) No description
transactionHash (String) No description
explorerUri (String) No description
voting (VotingProgress!) No description
memo (String) Memo of the operation
asset (Asset!) No description
fromVaultAddress (Address!) No description

OperationConnection

No description
Fields for OperationConnection

Name Description
edges (OperationConnetionEdge!) No description
pageInfo (ConnectionPageInfo!) No description

OperationConnetionEdge

No description
Fields for OperationConnetionEdge

Name Description
cursor (String!) No description
node (Operation!) No description

OperationCreateVault

No description
Fields for OperationCreateVault

Name Description
signers (OperationSigner!) No description
threshold (Int!) No description
voting (VotingProgress!) No description
id (ID!) No description
createdAt (DateTime!) No description
createdBy (User!) User that submitted the operation
expiresAt (DateTime) No description
status (OperationStatus!) Status of the reshare request
diff (ReshareDiff!) Changes done by this reshare
vault (Vault!) No description

OperationDisableAddr

No description
Fields for OperationDisableAddr

Name Description
disabledAddressHash (String!) No description
disabledVaultAddress (Address) No description
id (ID!) No description
createdAt (DateTime!) No description
createdBy (User!) User that submitted the operation
minedAt (DateTime) No description
status (OperationStatus!) Status of the transaction request
raw (String) No description
blockHeight (Int) No description
transactionHash (String) No description
explorerUri (String) No description
voting (VotingProgress!) No description
memo (String) Memo of the operation
fromVaultAddress (Address!) No description

OperationMint

No description
Fields for OperationMint

Name Description
id (ID!) No description
createdAt (DateTime!) No description
createdBy (User!) User that submitted the operation
minedAt (DateTime) No description
status (OperationStatus!) Status of the transaction request
amount (Decimal!) No description
raw (String) No description
fees (Decimal) Fees spent to execute the transaction in non unit format
blockHeight (Int) No description
transactionHash (String) No description
explorerUri (String) No description
voting (VotingProgress!) No description
memo (String) Memo of the operation
asset (Asset!) No description
fromVaultAddress (Address!) No description

OperationReshare

No description
Fields for OperationReshare

Name Description
newSigners (OperationSigner!) No description
newThreshold (Int!) No description
previousSigners (OperationSigner!) No description
previousThreshold (Int!) No description
voting (VotingProgress!) No description
id (ID!) No description
createdAt (DateTime!) No description
createdBy (User!) User that submitted the operation
expiresAt (DateTime) No description
status (OperationStatus!) Status of the reshare request
diff (ReshareDiff!) Changes done by this reshare
vault (Vault!) No description

OperationSigner

No description
Fields for OperationSigner

Name Description
weight (Int!) No description
device (Device!) No description

OperationTransferIn

No description
Fields for OperationTransferIn

Name Description
raw (String!) No description
transactionHash (String!) No description
explorerUri (String!) No description
minedAt (DateTime!) No description
blockHeight (Int!) No description
fromAddressHash (String!) No description
fees (Decimal!) Fees spent to execute the transaction in non unit format
id (ID!) No description
createdAt (DateTime!) No description
status (OperationStatus!) Status of the transaction request
amount (Decimal!) No description
asset (Asset!) No description
toVaultAddress (Address!) No description

OperationTransferOut

No description
Fields for OperationTransferOut

Name Description
raw (String) No description
transactionHash (String) No description
explorerUri (String) No description
minedAt (DateTime) No description
blockHeight (Int) No description
toAddressHash (String!) No description
voting (VotingProgress!) No description
fees (Decimal) Fees spent to execute the transaction in non unit format
id (ID!) No description
createdAt (DateTime!) No description
status (OperationStatus!) Status of the transaction request
amount (Decimal!) No description
asset (Asset!) No description
expiresAt (DateTime!) No description
createdBy (User!) User that submitted the operation
memo (String) No description
fromVaultAddress (Address!) No description

OperationTransferOutIn

No description
Fields for OperationTransferOutIn

Name Description
raw (String) No description
transactionHash (String) No description
explorerUri (String) No description
minedAt (DateTime) No description
blockHeight (Int) No description
voting (VotingProgress!) No description
fees (Decimal) Fees spent to execute the transaction in non unit format
id (ID!) No description
createdAt (DateTime!) No description
status (OperationStatus!) Status of the transaction request
amount (Decimal!) No description
asset (Asset!) No description
toVaultAddress (Address!) No description
expiresAt (DateTime!) No description
createdBy (User!) User that submitted the operation
memo (String) No description
fromVaultAddress (Address!) No description

ParsedContractInput

Represents a smart contract method call with its inputs
Fields for ParsedContractInput

Name Description
methodId (String!) No description
methodName (String!) No description
inputs (ParsedContractInputInput) No description

ParsedContractInputInput

Contract inputs objects which contain the name, type and value of the input
Fields for ParsedContractInputInput

Name Description
name (String!) No description
type (String!) No description
value (String!) No description

ParsedContractReceipt

No description
Fields for ParsedContractReceipt

Name Description
events (ParsedContractReceiptEvent) No description

ParsedContractReceiptEvent

No description
Fields for ParsedContractReceiptEvent

Name Description
name (String!) No description
fullParseSuccessful (Boolean!) No description
topics (ParsedContractReceiptTopic!) No description

ParsedContractReceiptTopic

No description
Fields for ParsedContractReceiptTopic

Name Description
name (String!) No description
type (String!) No description
value (String!) No description

Profile

No description
Fields for Profile

Name Description
name (String) No description
firstName (String) No description
middleName (String) No description
lastName (String) No description
fullName (String) No description
initials (String) No description
userName (String) No description
email (String) No description
profilePictureUri (String) No description
role (UserRole!) No description
type (UserType!) No description

RequestConnection

No description
Fields for RequestConnection

Name Description
edges (RequestConnetionEdge!) No description
pageInfo (ConnectionPageInfo!) No description

RequestConnetionEdge

No description
Fields for RequestConnetionEdge

Name Description
cursor (String!) No description
node (Request!) No description

ReshareDiffDeviceAdded

Reshare request change of adding a new device
Fields for ReshareDiffDeviceAdded

Name Description
device (Device!) The device that was added
weight (Int!) The weight of the device

ReshareDiffDevicePowerChanged

Reshare request to change a device's power
Fields for ReshareDiffDevicePowerChanged

Name Description
device (Device!) Device
originalWeight (Int!) The original weight of the device
newWeight (Int!) The new weight of the device

ReshareDiffDeviceRemoved

Reshare request change of removing a signer
Fields for ReshareDiffDeviceRemoved

Name Description
device (Device!) The device that was added
originalWeight (Int!) The weight of the device

ReshareDiffDeviceUnchanged

Reshare request change of unchanged device
Fields for ReshareDiffDeviceUnchanged

Name Description
device (Device!) The device that was unchanged
weight (Int!) The weight of the device

ReshareDiffThreshold

Reshare request change of a threshold to a vault
Fields for ReshareDiffThreshold

Name Description
originalThreshold (Int!) Original Number of signing power (shares / votes) for a reshare request or transaction request to form a consensus
newThreshold (Int!) New Number of signing power (shares / votes) for a reshare request or transaction request to form a consensus

ReshareDiffThresholdUnchanged

Reshare request with no change to the threshold of a vault
Fields for ReshareDiffThresholdUnchanged

Name Description
threshold (Int!) No description

ReshareRequest

Represents a request to change the signing party of a vault (originalSigningParty) to a new signing party (newSigningParty). The status will transition as the request moves through the flow of consensus; and consensus can only be met if the original signers approved weight at-least matches the vaults threshold and any new signers have also approved.
Fields for ReshareRequest

Name Description
id (ID!) No description
displayId (String!) No description
createdAt (DateTime!) No description
updatedAt (DateTime!) No description
expiresAt (DateTime) No description
status (ReshareRequestStatus!) No description
organisationId (String!) Organisation id that item belongs to
createdByUser (User!) User that submitted the reshareRequest
originalThreshold (Int) No description
threshold (Int!) Number of signing power (shares / votes) for a reshare request or transaction request to form a consensus
pendingSigners (Signer!) The proposed list of pending signers
originalSigners (Signer!) The signers before this reshare is executed
newSigners (Signer!) The proposed list of new signers
vault (Vault!) Vault that the reshareRequest applies to
votes (ReshareVote!) Collection of user submitted votes to approve or reject the request
foundedSigningParty (SigningParty) Signing party that is able to form a consensus to approve or reject the request
diff (ReshareDiff!) The changes that will be applied to the vault if the request is approved

ReshareVote

Request to change the signing party of a vault within the workspace associated to the access token
Fields for ReshareVote

Name Description
id (ID!) No description
displayId (String!) No description
createdAt (DateTime!) No description
result (SignerVote!) No description
signer (Signer!) Signer that submitted the vote
reshareRequest (ReshareRequest!) Reshare request that the vote is associated with

Signer

Represents a physical device that holds signing power (shares) of a vault
Fields for Signer

Name Description
id (ID!) No description
createdAt (DateTime!) No description
weight (Int!) Number of signing power the signer has (also known as number of shares)
device (Device!) Physical device that this signer is bound to (1 device to many signers)
status (SignerStatus!) No description
signingParty (SigningParty) No description

SigningParty

Represents a collection of signers that form the consensus for a vault
Fields for SigningParty

Name Description
id (ID!) No description
createdAt (DateTime!) No description
updatedAt (DateTime!) No description
deletedAt (DateTime) No description
threshold (Int!) Required number of signing power (shares / votes) for a reshare request or transaction request to form a consensus
vault (Vault!) Vault that the signing party is part of
signers (Signer!) Collection of signers that are able to vote / cosign reshare requests or transaction requests associated with the signing party

Transaction

Represents a collection of signers that form the consensus for a vault
Fields for Transaction

Name Description
id (ID!) No description
displayId (String!) No description
createdAt (DateTime!) No description
updatedAt (DateTime!) No description
minedAt (DateTime) No description
amount (Decimal!) No description
transactionId (String!) Blockchain transaction ID
parentTransactionId (String) Blockchain transaction ID of the parent transaction. This is typically used for ERC20 transactions.
isParentTransaction (Boolean!) Returns true if the transaction is the parent. This is typically used for ERC20 transactions.
hasChildrenTransactions (Boolean!) Returns true if the transaction is the parent and has related child transactions. This is typically used for ERC20 transactions.
raw (String!) No description
status (TransactionStatus!) No description
blockHeight (Int!) Block height that the transaction was included in
transactionRequest (TransactionRequest) transactionRequest that founded the transaction. Null if its an inbound transaction
fees (Decimal!) Fees spent to execute the transaction in non unit format
blockHash (String!) No description
fromVault (Vault) Vault that sent the transaction. Null if its an external address and not a vault
toVault (Vault) Vault that received the transaction. Null if its an external address and not a vault
toAddress (String!) Address that received the transaction
fromAddress (String!) Address that sent the transaction
asset (Asset!) Asset sent in the transaction
explorerUri (String) No description
metadata (TransactionMetadata) Additional data related to the transaction

TransactionHistoryItemConnection

No description
Fields for TransactionHistoryItemConnection

Name Description
edges (TransactionHistoryItemConnetionEdge!) No description
pageInfo (ConnectionPageInfo!) No description

TransactionHistoryItemConnetionEdge

No description
Fields for TransactionHistoryItemConnetionEdge

Name Description
cursor (String!) No description
node (TransactionHistoryItem!) No description

TransactionMetadata

No description
Fields for TransactionMetadata

Name Description
nonce (String) No description
status (Int) Status of the transaction after execution (1 = Ok, 0 = Fail, -1 = Pending, -2 = Unknown)
gasLimit (String) No description
gasUsed (String) No description
gasPrice (String) No description
contractData (String) No description
parsedContractInputs (ParsedContractInput) No description
parsedContractReceipt (ParsedContractReceipt) Resolves transaction logs

TransactionRequest

Represents a request to sign a transaction. This object contains all the details of the intended transaction as well as a status that transitions as the request is approved, processed, and broadcasted to the blockchain.
Fields for TransactionRequest

Name Description
id (ID!) No description
displayId (String!) No description
createdAt (DateTime!) No description
updatedAt (DateTime!) No description
expiresAt (DateTime) No description
organisationId (String!) Organisation id that item belongs to
createdByUser (User!) User that submitted the transactionRequest
amount (Decimal!) No description
sendingAddress (Address!) No description
sendingAddressId (ID!) No description
receivingAddress (String!) No description
vault (Vault!) Vault to send from
asset (Asset!) No description
assetId (ID!) No description
transactionId (ID) No description
transaction (Transaction) On-chain transaction related to the transactionRequest. Null if the transaction has not been broadcasted
memo (String) No description
rawTransaction (String) No description
status (TransactionRequestStatus!) No description
votes (TransactionRequestVote!) Collection of user submitted votes to approve or reject the transaction
metadata (TransactionRequestMetadata!) Additional data required by different chains to process the transaction such as fee etc...
explorerUri (String) No description

TransactionRequestMetadata

No description
Fields for TransactionRequestMetadata

Name Description
contractData (String) No description
source (TransactionMetadataSourceType) No description
sourceUrl (String) No description
signerInputV1 (String) No description

TransactionRequestVote

No description
Fields for TransactionRequestVote

Name Description
id (ID!) No description
displayId (String!) No description
createdAt (DateTime!) No description
result (SignerVote!) No description
signer (Signer!) No description
transactionRequest (TransactionRequest!) No description

User

No description
Fields for User

Name Description
id (ID!) No description
devices (Device!) No description
profile (Profile!) No description

Vault

Represents a collection of addresses and balances secured by TSS MPC cryptography, and demonstrated in the form of a signing party; The signing party defines the distribution of "key-shares" (i.e weight) and the threshold of the vault; for any MPC TSS ceremonies (key-gen, re-sharing, transaction signing) to complete, the signers weight approving the operation needs to at-least match the threshold.
Fields for Vault

Name Description
id (ID!) Unique ID used to identity a vault. CUID Format.
createdAt (DateTime!) No description
updatedAt (DateTime!) No description
deletedAt (DateTime) No description
name (String!) Name of the vault; For the users within the org to help identify the vault
description (String!) Description of the vault; For the users within the org to understand the intended usage of the vault
organisationId (String!) Unique ID used to identify an organisation. CUID Format.
createdByUser (User!) Unique ID used to identify a user. UUID Format.
status (VaultStatus!) Status of the vault. Can be either CREATING or CREATED
signers (Signer!) Signers (mobile devices / virtual signers) elected to participate in the MPC TSS ceremonies.
threshold (Int!) Minimum number of weight (shares) that need to approve an operation and proceed in MPC TSS ceremonies before it can be completed.
reshareNonce (Int!) Integer that is incremented every time a reshare is completed. A vault that has just been created and whose initial reshare request has not been signed yet would have a "reshareNonce" of -1.
visibleAssets (Address!) List of all addresses that are visible to the user. Used for UX/UI purposes.
curves (VaultCurve!) Eliptic curve algorithms generated for the vault
signingParty (SigningParty) Signing party that forms the consensus for the vault
balance (Decimal!) Total balance of the vault

VaultCurve

VaultCurve represents an eliptic curve, algorithm and public key
Fields for VaultCurve

Name Description
id (ID!) No description
vault (Vault!) The vault associated with the curve
algorithm (SignatureAlgorithm!) No description
curve (ElipticCurve!) No description
publicKey (String!) Raw public key associated with the vault
xpub (String!) Reserved for bip32 support

VotingProgress

VotingProgress represents the vote parameters and instance of an operation
Fields for VotingProgress

Name Description
threshold (Int!) No description
approvedWeight (Int!) No description
progress (Decimal!) No description
votes (VotingProgressVote!) No description

VotingProgressVote

No description
Fields for VotingProgressVote

Name Description
vote (SignerVote) No description
weight (Int!) No description
device (Device!) No description
required (Boolean!) No description