Skip to content
Docs

Get Region

client.Regions.Get(ctx, name) (*Region, error)
GET/v1/regions/{name}

Get a region by name

ParametersExpand Collapse
name string
ReturnsExpand Collapse
type Region struct{…}

Region response with product availability.

Availability RegionAvailability

Availability status of the region.

One of the following:
const RegionAvailabilityLive RegionAvailability = "live"
const RegionAvailabilityPreview RegionAvailability = "preview"
const RegionAvailabilityMaintenance RegionAvailability = "maintenance"
const RegionAvailabilitySunset RegionAvailability = "sunset"
Compute RegionCompute

Compute products available in this region.

VMs bool

VMs indicates if Virtual Machines are available.

Name string

Name of the region.

Networking RegionNetworking

Networking products available in this region.

Connect bool

Connect indicates if Nirvana Connect is available.

VPCs bool

VPCs indicates if Virtual Private Clouds are available.

NKS RegionNKS

NKS products available in this region.

Autoscaling bool

Autoscaling indicates if NKS node pool autoscaling is available.

Clusters bool

Clusters indicates if NKS managed Kubernetes clusters are available.

Storage RegionStorage

Storage products available in this region.

ABS bool

ABS indicates if Accelerated Block Storage is available.

LocalNvme bool

LocalNVMe indicates if locally-attached NVMe storage is available.

Get Region

package main

import (
  "context"
  "fmt"

  "github.com/nirvana-labs/nirvana-go"
  "github.com/nirvana-labs/nirvana-go/option"
)

func main() {
  client := nirvana.NewClient(
    option.WithAPIKey("My API Key"),
  )
  region, err := client.Regions.Get(context.TODO(), "us-sva-2")
  if err != nil {
    panic(err.Error())
  }
  fmt.Printf("%+v\n", region.Availability)
}
{
  "availability": "live",
  "compute": {
    "vms": true
  },
  "name": "us-sva-2",
  "networking": {
    "connect": true,
    "vpcs": true
  },
  "nks": {
    "autoscaling": false,
    "clusters": false
  },
  "storage": {
    "abs": false,
    "local_nvme": true
  }
}
Returns Examples
{
  "availability": "live",
  "compute": {
    "vms": true
  },
  "name": "us-sva-2",
  "networking": {
    "connect": true,
    "vpcs": true
  },
  "nks": {
    "autoscaling": false,
    "clusters": false
  },
  "storage": {
    "abs": false,
    "local_nvme": true
  }
}