Go SDK
github.com/h3llo/h3-go — официальный Go-клиент.
go get github.com/h3llo/h3-goМинимальный пример
package main
import (
"context"
"fmt"
"log"
h3 "github.com/h3llo/h3-go"
)
func main() {
client := h3.NewClient(h3.WithTokenFromEnv("H3_TOKEN"))
ctx := context.Background()
ops, err := client.Instances.List(ctx, &h3.InstanceListOptions{
Project: "prod",
})
if err != nil { log.Fatal(err) }
for _, i := range ops.Items {
fmt.Println(i.Name, i.Network.PublicIPv4)
}
}Long-running operation
op, err := client.K8s.Upgrade(ctx, "prod", "1.32")
if err != nil { return err }
res, err := op.Wait(ctx)Pagination
iter := client.Instances.Iter(ctx, nil)
for iter.Next() {
fmt.Println(iter.Item().Name)
}
if err := iter.Err(); err != nil { log.Fatal(err) }