package examples import ( "context" "fmt" "github.com/shurcooL/graphql" "edge-infra.dev/pkg/edge/api/client" "edge-infra.dev/pkg/edge/api/graph/model" ) type Cluster struct { ClusterEdgeID string `graphql:"clusterEdgeId" json:"clusterEdgeId"` ClusterName string `graphql:"name" json:"clusterName"` ClusterNetworkServices []*model.ClusterNetworkServiceInfo `graphql:"clusterNetworkServices" json:"clusterNetworkServices"` } func ClusterQuery() { username := "username" password := "123456" organization := "edge-dev1-retail-b526aa" bannerEdgeID := "3b4c9826-ffdc-42b4-8319-7aa29f7fa407" cl, err := client.New(client.WithCredentials(username, password, organization)) if err != nil { fmt.Println("err: ", err) } var clustersQuery struct { Clusters []Cluster `graphql:"clusters(bannerEdgeId: $bannerEdgeId)"` } if err := cl.Query(context.Background(), &clustersQuery, map[string]any{ "bannerEdgeId": graphql.String(bannerEdgeID), }); err != nil { fmt.Println("err: ", err) } fmt.Printf("Cluster Response: %v\n", clustersQuery) }