API Reference

buildETHTransaction

Builds an Ethereum transaction.

  • @param var1 The request object containing Ethereum transaction details.

  • @return A byte array containing the raw Ethereum transaction.

  • @throws Exception If the transaction building fails.

Example:

try {
    // Prepare the request object with transaction details
    val ethTransactionRequest = BuildETHTransactionRequest()

    // Call the buildETHTransaction method
    val rawTransaction = client.buildETHTransaction(ethTransactionRequest)

    // Print the raw transaction details
    println("Ethereum Transaction Built Successfully!")
    println("Raw Transaction: ${rawTransaction.contentToString()}")

} catch (e: Exception) {
    // Handle any exceptions that occur during the operation
    println("Error building Ethereum transaction: ${e.message}")
}

buildSolTransaction

Builds a Solana transaction.

  • @param var1 The request object containing Solana transaction details.

  • @return A byte array containing the raw Solana transaction.

  • @throws Exception If the transaction building fails.

Example:

buildTronTransaction

Builds a Tron transaction.

  • @param var1 The request object containing Tron transaction details.

  • @return A byte array containing the raw Tron transaction.

  • @throws Exception If the transaction building fails.

Example:

buildBTCTransaction

Builds an BTC transaction.

  • @param var1 The request object containing BTC transaction details.

  • @return A byte array containing the raw BTC transaction.

  • @throws Exception If the transaction building fails.

Example:

buildXrpTransaction

Builds a Xrp transaction.

  • @param var1 The request object containing Xrp transaction details.

  • @return A byte array containing the raw Xrp transaction.

  • @throws Exception If the transaction building fails.

createKeyGenMPCGroup

Creates an MPC group for key generation.

  • @param var1 The request object containing MPC group configuration.

  • @return An MPCGroup object containing details of the created group.

  • @throws Exception If the MPC group creation fails.

Example:

createPaillierMPCGroup

Creates a Paillier encryption-based MPC group.

  • @param var1 The request object containing Paillier MPC group configuration.

  • @return An MPCGroup object containing details of the created group.

  • @throws Exception If the MPC group creation fails.

Example:

getUserSetting

Retrieves user-specific settings.

  • @return A byte array containing the serialized user settings.

  • @throws Exception If the settings retrieval fails.

Example:

listBlockChainTransaction

Lists blockchain transactions based on the provided filtering criteria.

  • @param var1 The request object containing parameters for filtering blockchain transactions.

  • @return A ListBlockchainTransactionsResponse object containing the list of transactions.

  • @throws Exception If the operation fails.

Example:

listMPCGroups

Lists existing MPC groups with pagination support.

  • @param var1 The request object containing pagination details.

  • @return A ListMPCGroupsResponse object containing the list of MPC groups.

  • @throws Exception If the operation fails.

Example:

prepareAASmartAccount

Prepares an Account Abstraction (AA) smart account.

  • @param var1 The request object containing smart account setup details.

  • @return An AASmartAccount object containing the prepared account details.

  • @throws Exception If the preparation fails.

Example:

prepareAATxUserOp

Prepares a user operation for Account Abstraction (AA) transactions.

  • @param var1 The request object containing the details of the user operation to prepare.

  • @return A PrepareAATxUserOpResponse object containing the prepared user operation.

  • @throws Exception If the preparation fails.

Example:

profile

Retrieves the user's profile.

  • @return A User object containing the user's profile details.

  • @throws Exception If the profile retrieval fails.

Example:

saveUserSetting

Saves user-specific settings.

  • @param var1 The request object containing user settings to save.

  • @throws Exception If the operation fails.

Example:

sendUserOperation

Sends a user operation to the blockchain for Account Abstraction (AA) transactions.

  • @param var1 The request object containing operation details.

  • @return A String containing the transaction hash of the executed operation.

  • @throws Exception If the operation submission fails.

Example:

signing

Executes signing operations for an MPC group.

  • @param var1 The request object containing signing operation details.

  • @return A ByteArray containing the digital signature.

  • @throws Exception If the signing operation fails.

Example:

mpcKeyGen

Performs key generation that is compatible with Mnemonic Phrase.

  • @param var1 The request object containing key generation details.

  • @return A MPCKeyGenRequest object containing the details of the generated keys and associated metadata.

  • @throws Exception If the key generation fails.

Example:

mnemonicKeyGen

Performs key generation that is compatible with Mnemonic Phrase.

  • @param var1 The request object containing key generation details.

  • @return A MnemonicKeyGenRequest object containing the details of the generated keys and associated metadata.

  • @throws Exception If the key generation fails.

Example:

validateETHAddr

Validates the given Ethereum address.

  • @param var1 The request object containing the Ethereum address to validate.

  • @return true if the Ethereum address is valid, false otherwise.

Example:

exportMnemonic

Exports the mnemonic phrase for a given key generation group.

  • @param keygenGroupId The unique identifier of the key generation group.

  • @param keyIdentities The key identities associated with the group.

  • @return A String containing the exported mnemonic phrase.

Example:

deleteMPCGroup

Deletes a Paillier MPC group.

  • @param groupID The unique identifier of the group to delete.

Example:

getCurrentPolicy

Retrieves the current transaction policy.

  • @return A Flow emitting the current transaction policy.

Example:

enablePolicy

Enables the current policy with the specified delay in hours and a force flag.

  • @param delayHours The delay (in hours) before enabling the policy.

  • @param force A flag indicating whether to override any existing or in-progress policies.

  • @throws IllegalStateException If [whiteListRepository] is not initialized.

  • @return A [Flow] emitting the updated [Policy].

Example:

disablePolicy

Disables the current policy and emits the updated [Policy].

Example:

addWalletAddress

Adds a wallet address for a specific network chain with the provided labels.

  • @param address The wallet address to be added.

  • @param networkChain The blockchain network chain the address belongs to.

  • @param labels A list of labels associated with this address.

  • @throws IllegalStateException If [whiteListRepository] is not initialized.

  • @return A [Flow] emitting the newly added [Address].

Example:

removeWalletAddress

Removes the specified wallet address by its unique identifier.

  • @param walletId The unique identifier of the wallet address to remove.

  • @throws IllegalStateException If [whiteListRepository] is not initialized.

  • @return A [Flow] of [Unit] that completes once the wallet address is removed.

Example:

updateWalletAddress

Updates an existing wallet address, identified by [walletId], with a new set of [labels].

  • @param walletId The unique identifier of the wallet address to update.

  • @param labels A list of new labels to be applied to this wallet address.

  • @throws IllegalStateException If [whiteListRepository] is not initialized.

  • @return A [Flow] emitting the updated [Address].

Example:

Last updated