Usage
For example, to bridge USDC from Base to Scroll
import * as owlto from "owlto-sdk";
const options: owlto.BridgeOptions = {}
let bridge = new owlto.Bridge(options);
const result = await bridge.getBuildTx(
"USDC", //token name
"BaseMainnet", //from chain name
"ScrollMainnet",// to chain name
"1", // value
"0xa5E56D455BF247C475D752721Ba35A0c85Df81Dc", // from address
"0xa5E56D455BF247C475D752721Ba35A0c85Df81Dc", // to address
);
//initialize your wallet
//...
if (result.txs.approveBody) {
const tx = await wallet.sendTransaction(result.txs.approveBody as ethers.TransactionRequest);
await tx.wait();
}
const tx = await wallet.sendTransaction(result.txs.transferBody as ethers.TransactionRequest);
await tx.wait();
const receipt = await bridge.waitReceipt(tx.hash)
console.log(receipt)
For more details, check the example/bridge_usdc folder.
Bridge options
1.chainNameMapping (Map<string, string> | optional)
Map your the chain names from your protocol with Owlto.
For example, if the chain name of Base Mainnet on your protocol is "Base", you can set chainNameMapping["Base"] = "BaseMainnet"
.
Then you can run functions with chain name as "Base" in order to proceed with a bridge.
Get build tx
const result = await bridge.getBuildTx(
"USDC", //token name
"BaseMainnet", //from chain name
"ScrollMainnet",// to chain name
"1", // value
"0xa5E56D455BF247C475D752721Ba35A0c85Df81Dc", // from address
"0xa5E56D455BF247C475D752721Ba35A0c85Df81Dc", // to address
);
//result:
{
...
networkType: 1; //
txs: any; //actual transactions need to be sent to from chain, see the following details
}
The txs contains the transactions user should send to from chain
when bridging.
1.Evm
txs.approveBody
The approve transaction, if any, should be sent first.
txs.transferBody
The actual transfer transaction.
2.Starknet
Coming Soon
3.Solana
Coming Soon
Get receipt
bridge.waitReceipt(fromChainHash: string)
bridge.getReceipt(fromChainHash: string)
fromChainHash
is the hash value of the transfer transaction.
waitReceipt
refers to waiting for the bridge process to complete.
If the bridge process is not completed within 1 minute (usually due to not finding the hash value or failure), error message will be displayed.
getReceipt
refers to get the status of a bridge process.
If fromChainHash
is not found, bridge is in progress or failed, error message will be displayed.
Get pair info
bridge.getPairInfo(tokenName: string, fromChainName: string, toChainName: string)
bridge.getAllPairInfos()
A pair consists of three components: token name
, from chain name
, to chain name
.
You can only bridge supported pairs
HTTP API Documentation
Please visit: https://owlto.finance/bridge_api/v1/swagger/index.html .
Last updated
Was this helpful?