Usage
To use the SDK in your Golang project, you must first import it:
import s6 "github.com/thesixnetwork/six-protocol-go-sdk/api"
Creating Client
gasPrice := "1.25usix" // default "1.25usix"
clientOptions := &s6.ClientOptions{
BroadcastMode: "<broadcast-mode>", // default "block"
GasPrices: &gasPrice,
}
client, err := s6.NewClient(
"<nodeURL>",
"<armor>",
"<passphrase>",
"<chain-id>",
clientOptions,
)
if err != nil {
fmt.Println(err)
return
}
Broadcast Mode
sync
: Wait for the transaction to pass/fail the CheckTx
async
: Do not wait for the transaction to pass/fail the CheckTx. Instead, send and return the transaction immediately.
block
: Wait for the transaction to pass/fail the CheckTx, DeliverTx, and be committed to a block. (Note: this is not recommended.)
nodeURL: Endpoint URL for SIX Protocol fivenet: https://rpc1.fivenet.sixprotocol.net sixnet: https://sixnet-rpc.sixprotocol.net armor: An encrypted private key use with passphrase as a secret key. passphrase: Together with encrypted private key is used as a secret key. Here is the detail about how to create both armor and passphrase. chain-id: For testnet , the chain id is "fivenet" and "sixnet" for Testnet and Mainnet
Construct Message
Create a message for each service that you need to use. You can find more messages here
import nftmngrtypes "github.com/thesixnetwork/sixnft/x/nftmngr/types"
msg := &nftmngrtypes.MsgPerformActionByAdmin{
Creator: client.ConnectedAddress,
NftSchemaCode: "nft-schema-code",
TokenId: "<token-id>",
Action: "<action-name>",
RefId: "<ref-idL>",
Parameters: []*nftmngrtypes.ActionParameter{},
}
Broadcast Transaction
txResponse, err := client.GenerateOrBroadcastTx(msg)
Query
To query the data , you can use read-to-use query client from the constructed client. And for more detail about queries you can use , here is the list.
queryClient := client.QueryClient()
go.mod
You would need to put the line below at the bottom of your go.mod
replace github.com/gogo/protobuf v1.3.3 => github.com/regen-network/protobuf v1.3.3-alpha.regen.1
Last updated