The golang client for the NS1 API: https://ns1.com/api/
$ go get gopkg.in/ns1/ns1-go.v2
package main
import (
"fmt"
"log"
"net/http"
"os"
"time"
api "gopkg.in/ns1/ns1-go.v2/rest"
)
func main() {
k := os.Getenv("NS1_APIKEY")
if k == "" {
fmt.Println("NS1_APIKEY environment variable is not set, giving up")
os.Exit(1)
}
httpClient := &http.Client{Timeout: time.Second * 10}
client := api.NewClient(httpClient, api.SetAPIKey(k))
zones, _, err := client.Zones.List()
if err != nil {
log.Fatal(err)
}
for _, z := range zones {
fmt.Println(z.Zone)
}
}
Contributions, ideas and criticisms are all welcome.
Apache2 - see the included LICENSE file for more information