Go SDK for the Selectel Cloud Public Net API service for managing networking resources - direct public IP addresses (which are represented as public ports).
For example, it is used the Selectel Terraform Provider.
You can install needed public-net-api-go packages via go get command:
go get github.com/selectel/public-net-api-goTo work with the Selectel Public Net API you first need to:
- Create a Selectel account: registration page.
- Create a project in Selectel Cloud Platform projects.
- Retrieve a Keystone token for your project via API or go-selvpcclient.
You can find available endpoints here.
package main
import (
"context"
"fmt"
"log"
publicnetapi "github.com/selectel/public-net-api-go/pkg/v1"
)
func main() {
cfg := &publicnetapi.Config{
AuthToken: "...",
URL: "https://ru-3.cloud.api.selcloud.ru/public-net/",
}
client, err := publicnetapi.NewPublicNetAPIClient(cfg)
if err != nil {
log.Fatal(err)
}
ports, err := client.ListPorts(context.Background(), nil)
if err != nil {
log.Fatal(err)
}
for _, port := range ports {
fmt.Printf("Port %s: %s\n", port.ID, port.IPAddress)
}
}- Port — List, Get, Create, Update, Delete
- Project quotas — Get