Wallet Provider API methods
Call each viaprovider.request({ method: '<name>', params: [...] }) unless noted otherwise.
Common error codes
- TIMEOUT: popup not resolved before timeout
- POPUP_ERROR: could not open popup
- …Cancelled: user closed popup (e.g.,
validationCancelled,addTwitterIdentityCancelled) - Method-specific errors (e.g.,
nativeTransferError,sendTransactionError), with optionaldetails
Connection
connect
- Params: none
- Behavior: opens a connection popup; user approves/denies.
- Success data:
{ address: string } - Errors:
connectionDenied,connectionCancelled,TIMEOUT,POPUP_ERROR
Transactions
These let your dApp construct transactions (or messages) and have the wallet sign and/or broadcast them.sign
- Params:
[ message: string ] - Behavior: opens a sign popup for a plain message.
- Success data:
{ signature: string }(wrapped by the wallet; underlying object includes{ success: true, signature }) - Errors:
signError,signCancelled,TIMEOUT,NOT_LOGGED_IN
signTransaction
- Params:
[ unsignedTransaction: Transaction ] - Behavior: opens a sign-transaction popup and returns the signed transaction.
- Success data:
{ signedTransaction }(wrapped; underlying object includes{ success: true, signedTransaction }) - Errors:
signTransactionError,signTransactionCancelled,TIMEOUT,NOT_LOGGED_IN
sendTransaction
- Params:
[ transaction: Transaction ] - Behavior: signs the transaction, validates it, opens validation popup; on confirmation, broadcasts.
- Success data:
{ result, validityData } - Errors:
sendTransactionError,sendTransactionCancelled,TIMEOUT,POPUP_ERROR
sendSignedTransaction
- Params:
[ signedTransaction: Transaction ] - Behavior: validates the signed transaction, opens validation popup; on confirmation, broadcasts.
- Success data:
{ result, validityData } - Errors:
sendSignedTransactionError,sendSignedTransactionCancelled,TIMEOUT,POPUP_ERROR
Transaction helpers
These will construct, validate and broadcast transactions directly inside the wallet by passing the required parameters.nativeTransfer
- Params:
[ { recipientAddress: string, amount: number } ] - Behavior: creates a transfer, validates it, then opens validation popup for user confirmation and broadcast.
- Success data:
{ result, validityData } - Errors:
nativeTransferError,nativeTransferCancelled,TIMEOUT,POPUP_ERROR
Identity
getXmIdentities
- Params: none
- Success data: list of identities from SDK
- Errors:
getXmIdentitiesError
addXmIdentity
- Params:
[payload: InferFromSignaturePayload] - Behavior: infers and validates identity, then prompts user in validation popup; upon confirmation broadcasts.
- Success data:
{ result, validityData } - Errors:
addXmIdentityError,addXmIdentityCancelled,TIMEOUT
removeXmIdentity
- Params:
[payload: XMCoreTargetIdentityPayload] - Behavior: creates removal validity data and prompts user in validation popup; upon confirmation broadcasts.
- Success data:
{ result, validityData } - Errors:
removeXmIdentityError,removeXmIdentityCancelled,TIMEOUT
getWeb2Identities
- Params: none
- Success data: identities list from SDK
- Errors:
getWeb2IdentitiesError
getWeb2IdentityProofPayload
- Params: none
- Success data: proof payload to be used for Web2 identity linking
- Errors:
getWeb2IdentityProofPayloadError(also returned if user not logged in)
addTwitterIdentity
- Params:
[payload: TwitterProof] - Behavior: validates and prompts user in validation popup; upon confirmation broadcasts.
- Success data:
{ result, validityData } - Errors:
addTwitterIdentityError,addTwitterIdentityCancelled,TIMEOUT
removeWeb2Identity
- Params:
[ { context: string, username: string } ] - Behavior: constructs validity data and prompts user in validation popup; upon confirmation broadcasts.
- Success data:
{ result, validityData } - Errors:
removeWeb2IdentityError,removeWeb2IdentityCancelled,TIMEOUT