Icinga2 API client.
import "github.com/vshn/go-icinga2-client/icinga2"
icinga, err := icinga2.New(icinga2.WebClient{
URL: "https://icinga.somewhere.com:5665,
Username: "icinga",
Password: "secret",
Debug: true,
InsecureTLS: false,
DisableKeepAlives: false})
hostGroups, err := icinga.ListHostGroups()
icinga.CreateHostGroup(icinga2.HostGroup{"mygroup"})
icinga.DeleteHostGroup("mygroup")
So far, supported are hostgroups, hosts, services. Downtimes are supported readonly.