go get github.com/bronlabs/bron-sdk-go
APIKey
WorkspaceID
BaseURL
export BRON_API_KEY='{"kty":"EC","x":"VqW0Rzw4At***ADF2iFCzxc","y":"9AylQ7HHI0vRT0C***PqWuf2yT8","crv":"P-256","d":"DCQ0jrmYw8***9i64igNKuP0","kid":"cmdos3lj50000sayo6pl45zly"}' export BRON_WORKSPACE_ID='htotobpkg7xqjfxenjid3n1o'
package main import ( "log" "os" "github.com/bronlabs/bron-sdk-go/sdk" "github.com/bronlabs/bron-sdk-go/sdk/types" "github.com/google/uuid" "github.com/joho/godotenv" ) func main() { godotenv.Load() client := sdk.NewBronClient(bron.BronClientConfig{ APIKey: os.Getenv("BRON_API_KEY"), WorkspaceID: os.Getenv("BRON_WORKSPACE_ID"), }) // Get workspace workspace, err := client.Workspaces.GetWorkspaceById() if err != nil { log.Fatal(err) } log.Printf("Workspace: %s", workspace.Name) // Get accounts accounts, err := client.Accounts.GetAccounts(nil) if err != nil { log.Fatal(err) } // Get balances for first account if len(accounts.Accounts) > 0 { account := accounts.Accounts[0] accountIds := []string{account.AccountId} balances, err := client.Balances.GetBalances(&types.BalancesQuery{ AccountIds: &accountIds, }) if err != nil { log.Fatal(err) } for _, balance := range balances.Balances { log.Printf("Balance %s (%s): %s", balance.AssetId, balance.Symbol, balance.TotalBalance) } // Create transaction tx, err := client.Transactions.CreateTransaction(types.CreateTransaction{ AccountId: account.AccountId, ExternalId: uuid.New().String(), TransactionType: "withdrawal", Params: map[string]interface{}{ "amount": "73.042", "assetId": "2", "networkId": "ETH", "toAddress": "0x428CdE5631142916F295d7bb2DA9d1b5f49F0eF9", }, }) if err != nil { log.Fatal(err) } log.Printf("Created transaction '%s' (%s): sent %s", tx.TransactionId, tx.Status, tx.Params["amount"]) } }
Was this page helpful?