DogiWallet SDK API Reference
Explore the full API documentation for advanced usage and all available methods of the DogiWallet SDK.
Table of Contents
Initialization
new DogiWallet(options?)
Creates a new instance of the DogiWallet SDK.
import { DogiWallet } from '@dogiwallet/browser-sdk';
const wallet = new DogiWallet({
network: 'mainnet', // or 'testnet'
apiUrl: 'https://api.dogiwallet.com', // optional custom API URL
});
Parameters
options(optional): Configuration options for the walletoptions.network: 'mainnet' or 'testnet' (default: 'mainnet')options.apiUrl: Custom API URL (optional)
Wallet Management
wallet.connect()
Connects to the DogiWallet browser extension.
const connected = await wallet.connect();
console.log('Wallet connected:', connected);
Returns
Promise<boolean>: True if connected successfully, false otherwise.
wallet.disconnect()
Disconnects from the DogiWallet browser extension.
await wallet.disconnect();
console.log('Wallet disconnected');
Returns
Promise<void>
wallet.getAddress()
Retrieves the current Dogecoin address associated with the wallet.
const address = await wallet.getAddress();
console.log('Wallet address:', address);
Returns
Promise<string>: The Dogecoin address.
Transactions
wallet.buildTransaction(options)
Builds a new transaction.
const tx = await wallet.buildTransaction({
to: 'DBs4WcRE7eysKwRxHNX88XZVCQ9M6qoJv4',
amount: 100, // Amount in DOGE
feeRate: 0.01 // Optional: Specify custom fee rate
});
console.log('Built transaction:', tx);
Parameters
options.to: Recipient's Dogecoin addressoptions.amount: Amount to send in DOGEoptions.feeRate(optional): Custom fee rate
Returns
Promise<Transaction>: The built transaction object.
wallet.signTransaction(transaction)
Signs a built transaction.
const signedTx = await wallet.signTransaction(tx);
console.log('Signed transaction:', signedTx);
Parameters
transaction: The transaction object to sign
Returns
Promise<SignedTransaction>: The signed transaction object.
wallet.broadcastTransaction(signedTransaction)
Broadcasts a signed transaction to the Dogecoin network.
const txId = await wallet.broadcastTransaction(signedTx);
console.log('Transaction broadcasted. Transaction ID:', txId);
Parameters
signedTransaction: The signed transaction object to broadcast
Returns
Promise<string>: The transaction ID of the broadcasted transaction.
Doginals
wallet.getDoginals()
Retrieves all Doginals NFTs associated with the wallet.
const doginals = await wallet.getDoginals();
console.log('Doginals:', doginals);
Returns
Promise<Doginal[]>: An array of Doginal objects.
wallet.transferDoginal(options)
Transfers a Doginal NFT to another address.
const transferTx = await wallet.transferDoginal({
doginalId: 'abc123...',
to: 'DBs4WcRE7eysKwRxHNX88XZVCQ9M6qoJv4'
});
const signedTransferTx = await wallet.signTransaction(transferTx);
const txId = await wallet.broadcastTransaction(signedTransferTx);
console.log('Doginal transfer transaction broadcasted:', txId);
Parameters
options.doginalId: The ID of the Doginal to transferoptions.to: The recipient's Dogecoin address
Returns
Promise<Transaction>: The built transaction for transferring the Doginal.
Dunes Tokens
wallet.getDunesBalance()
Retrieves the Dunes token balance for the wallet.
const dunesBalance = await wallet.getDunesBalance();
console.log('Dunes Balance:', dunesBalance);
Returns
wallet.mintDunes(options)
Mints new Dunes tokens.
const mintTx = await wallet.mintDunes({
amount: 1000,
ticker: 'MYDUNE'
});
const signedMintTx = await wallet.signTransaction(mintTx);
const txId = await wallet.broadcastTransaction(signedMintTx);
console.log('Dunes minting transaction broadcasted:', txId);
Parameters
options.amount: The amount of Dunes tokens to mintoptions.ticker: The ticker for the Dunes token
Returns
Promise<Transaction>: The built transaction for minting Dunes tokens.
Utility Methods
wallet.getBalance()
Retrieves the DOGE balance for the wallet.
const balance = await wallet.getBalance();
console.log('DOGE Balance:', balance);
Returns
Promise<number>: The DOGE balance.
wallet.estimateFee(options)
Estimates the fee for a transaction.
const estimatedFee = await wallet.estimateFee({
to: 'DBs4WcRE7eysKwRxHNX88XZVCQ9M6qoJv4',
amount: 100
});
console.log('Estimated fee:', estimatedFee);
Parameters
options.to: Recipient's Dogecoin addressoptions.amount: Amount to send in DOGE
Returns
Promise<number>: The estimated fee in DOGE.