> For the complete documentation index, see [llms.txt](https://doc.bittap.org/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://doc.bittap.org/developer-guides/api-reference.md).

# API Reference

- [CreateWallet](https://doc.bittap.org/developer-guides/api-reference/createwallet.md): Create a wallet for the end user.
- [NewAddr](https://doc.bittap.org/developer-guides/api-reference/newaddr.md): Create a new Taproot Assets address.
- [DecodeAddr](https://doc.bittap.org/developer-guides/api-reference/decodeaddr.md): Decode a Taproot Assets address.
- [QueryAddrs](https://doc.bittap.org/developer-guides/api-reference/queryaddrs.md): Query all created Taproot Assets addresses in a wallet.
- [ImportAsset](https://doc.bittap.org/developer-guides/api-reference/importasset.md): Import a Taproot Asset from other universe.
- [QueryAssetStat](https://doc.bittap.org/developer-guides/api-reference/queryassetstat.md): Query all Taproot Assets metadata in Bittapd without regarding end users.
- [ListAssetHistory](https://doc.bittap.org/developer-guides/api-reference/listassethistory.md): List all Taproot Assets and BTC transaction history in a wallet.
- [Estimate-tx-fee](https://doc.bittap.org/developer-guides/api-reference/estimate-tx-fee.md): Estimate the transaction fee for current layer 1 or layer 2 asset transfer.
- [GetAssetBalance](https://doc.bittap.org/developer-guides/api-reference/getassetbalance.md): Get all Taproot Assets balance in a wallet.
- [GetBtcBalance](https://doc.bittap.org/developer-guides/api-reference/getbtcbalance.md): Get BTC balance in a wallet.
- [SendAsset](https://doc.bittap.org/developer-guides/api-reference/sendasset.md): Sending assets requires several rounds of communication between wallet and bittapd, because bittapd needs end users to sign twice.
- [TransferAsset](https://doc.bittap.org/developer-guides/api-reference/sendasset/transferasset.md): First step to transfer Taproot Assets to an address. Virtual psbts for active assets and passive assets will be returned in response for user's first time sign.
- [AnchorVirtualPsbt](https://doc.bittap.org/developer-guides/api-reference/sendasset/anchorvirtualpsbt.md): Second step to transfer Taproot Assets to an address. This will accept the user's signed virtual psbt to verify, and if valid, return anchored psbt for another signature.
- [PublishTransfer](https://doc.bittap.org/developer-guides/api-reference/sendasset/publishtransfer.md): Third step to transfer Taproot Assets to an address. This will accept the user's signed anchor psbt to broadcast to BTC network, if confirmed send proof to receiver too.
- [SendBtc](https://doc.bittap.org/developer-guides/api-reference/sendbtc.md): Sending BTC requires 2 rounds of communication between wallet and bittapd, because bittapd needs end users to sign only once.
- [TransferBtc](https://doc.bittap.org/developer-guides/api-reference/sendbtc/transferbtc.md): First step to transfer BTC to an address. Psbt will be returned in response for user's sign.
- [PublishTransferBtc](https://doc.bittap.org/developer-guides/api-reference/sendbtc/publishtransferbtc.md): Second step to transfer BTC to an address. This will accept the user's signed psbt to broadcast in BTC network.
