github.com/IBM-Cloud/bluemix-go@v0.0.0-20240314082800-4e02a69b84b2/examples/account/accountv2/main.go (about) 1 package main 2 3 import ( 4 "flag" 5 "fmt" 6 "log" 7 "os" 8 9 "github.com/IBM-Cloud/bluemix-go/api/account/accountv2" 10 "github.com/IBM-Cloud/bluemix-go/api/mccp/mccpv2" 11 "github.com/IBM-Cloud/bluemix-go/session" 12 "github.com/IBM-Cloud/bluemix-go/trace" 13 ) 14 15 func main() { 16 var org string 17 var ownerUserID string 18 flag.StringVar(&org, "org", "", "Bluemix Organization") 19 flag.StringVar(&ownerUserID, "owner_id", "", "Owner user id, for example - abc@c.com") 20 21 flag.Parse() 22 23 if org == "" || ownerUserID == "" { 24 flag.Usage() 25 os.Exit(1) 26 } 27 28 trace.Logger = trace.NewLogger("true") 29 sess, err := session.New() 30 if err != nil { 31 log.Fatal(err) 32 } 33 34 client, err := mccpv2.New(sess) 35 36 if err != nil { 37 log.Fatal(err) 38 } 39 40 orgAPI := client.Organizations() 41 myorg, err := orgAPI.FindByName(org, "us-south") 42 43 if err != nil { 44 log.Fatal(err) 45 } 46 accClient, err := accountv2.New(sess) 47 if err != nil { 48 log.Fatal(err) 49 } 50 accountAPI := accClient.Accounts() 51 myAccount, err := accountAPI.FindByOrg(myorg.GUID, "us-south") 52 if err != nil { 53 log.Fatal(err) 54 } 55 log.Println(myAccount.Name, myAccount.CountryCode, myAccount.OwnerUserID, myAccount.GUID) 56 57 myAccount, err = accountAPI.Get(myAccount.GUID) 58 if err != nil { 59 log.Fatal(err) 60 } 61 log.Println(myAccount.Name, myAccount.CountryCode, myAccount.OwnerUserID, myAccount.GUID) 62 63 myAccount, err = accountAPI.FindByOwner(ownerUserID) 64 if err != nil { 65 log.Fatal(err) 66 } 67 log.Println(myAccount.Name, myAccount.CountryCode, myAccount.OwnerUserID, myAccount.GUID) 68 69 allAccounts, err := accountAPI.List() 70 if err != nil { 71 log.Fatal(err) 72 } 73 for _, acc := range allAccounts { 74 fmt.Println(acc.OwnerUserID, acc.GUID) 75 } 76 }