For the complete documentation index, see llms.txt. This page is also available as Markdown.

10. Asset Withdrawals

Users are able to withdraw assets from L2 to L1 in Zecrey.

Initialize SDK

  • You need to initialize the SDK in order to use it.

Mint asset

Withdraw NFT to L1

  • Parameters needed:

Parameter

Parameter usage and meaning

Required vs Optional

accountName

The account name used to initialize the client

✅

seed

The user's L2 seed used to initialize the client

✅

nftId

The corresponding ID of the NFT to be withdrawn

✅

Example

  • Withdraw NFT with NftId = 6

    1. Initialize the client

    2. Withdraw the NFT

package main

import (
   "fmt"
   "github.com/Zecrey-Labs/zecrey-marketplace-go-sdk/sdk"
)


func main() {
    var nftId int64 = 6
    accountName := "Bob"
    seed := "17673b9a9fdec6dc90c7cc1eb1c939134dfb659d2f08edbe071e5c45f343d008"
    c, err := sdk.NewClient(accountName, seed) 	 
    if err != nil { panic(err) }
    
    result, err := c.WithdrawNft(nftId)
    if err != nil { panic(err) }
    
    data, _ := json.Marshal(result)
    fmt.Println("WithdrawNft:", string(data))
}

Example result

Example

  • Withdraw NFT with NftId = 6

    1. Initialize the client

    2. Withdraw the NFT

With the private key:

With the wallet:

Example result

Withdraw FT to L1

  • Query current user asset through GetAccountAssetsInfoByAccountName

  • Parameters needed:

    Parameter

    Parameter usage and meaning

    Requirement

    accountName

    The account name used to initialize the client

    ✅

    seed

    The user's L2 seed used to initialize the client

    ✅

    nftId

    ID of the NFT to be withdrawn

    ✅

    tol1Address

    Specify an L1 address to withdraw

    ✅

📚SDK REFERENCE

Example

  • Withdraw 100000 BNB to L1

    • Initialize client

    • Withdraw 100000 BNB

Example result

Example

  • Withdraw 100000 BNB to L1

    • Initialize client

    • Withdraw 0.0001 BNB

Example result

Last updated

Was this helpful?