Skip to Content
dApps

API Reference

Reference for OneKey’s Sui provider methods and types.


Methods

MethodDescription
hasPermissions()Check if connected
requestPermissions()Request connection
disconnect()Disconnect wallet
getAccounts()Get connected accounts
getActiveChain()Get current chain
isConnected()Check connection status
signAndExecuteTransactionBlock(input)Sign and execute transaction
signTransactionBlock(input)Sign transaction only
signAndExecuteTransaction(input)Sign and execute (new API)
signTransaction(input)Sign transaction (new API)
signMessage(input)Sign message (legacy)
signPersonalMessage(input)Sign personal message
onAccountChange(callback)Listen for account changes
onNetworkChange(callback)Listen for network changes

Types

Wallet Account

getAccounts() returns AccountInfo[]. Signing inputs require the Wallet Standard WalletAccount, whose publicKey is a byte array and which also carries chains and features. Obtain it through standard:connect; do not cast AccountInfo to WalletAccount.

import type { WalletAccount, IdentifierString } from '@mysten/wallet-standard' import type { Transaction } from '@mysten/sui/transactions' // provider.getAccounts() interface AccountInfo { address: string publicKey: string // Hex-encoded public key }

Sign and Execute Transaction Block Input

The current injected provider does not forward options in signAndExecuteTransactionBlock. Query the returned digest with a Sui client on the same chain to request effects, events, or object changes.

interface SignAndExecuteTransactionBlockInput { account: WalletAccount chain: IdentifierString transactionBlock: Transaction options?: { showEffects?: boolean showEvents?: boolean showObjectChanges?: boolean showBalanceChanges?: boolean showInput?: boolean showRawInput?: boolean } }

Sign Transaction Block Output

interface SignTransactionBlockOutput { transactionBlockBytes: string signature: string }

Sign Personal Message Input

interface SignPersonalMessageInput { account: WalletAccount chain?: IdentifierString message: Uint8Array }

Sign Personal Message Output

interface SignPersonalMessageOutput { signature: string bytes: string }

Supported Chains

ChainIdentifier
Mainnetsui:mainnet
Testnetsui:testnet
Devnetsui:devnet

Events

EventCallback ParametersDescription
accountChanged{ address, publicKey } | nullAccount changed
networkChangenetwork: string | nullNetwork changed
connectaddress: stringConnected
disconnect-Disconnected

Error Codes

CodeDescription
4001User rejected request
4100Unauthorized
-32603Internal error
Last updated on