func (self *Zone) Delete(id int64) (bool, error) {
	var res bool
	params := []interface{}{self.Key, id}
	if err := self.Call("domain.zone.delete", params, &res); err != nil {
		return false, err
	}
	return res, nil
}
Delete a zone
package zone
import (
	"github.com/prasmussen/gandi-api/client"
	"github.com/prasmussen/gandi-api/domain"
)
type Zone struct {
	*client.Client
}
func New(c *client.Client) *Zone {
	return &Zone{c}
}
func (self *Zone) Count() (int64, error) {
	var result int64
	params := []interface{}{self.Key}
	if err := self.Call("domain.zone.count", params, &result); err != nil {
		return -1, err
	}
	return result, nil
}
func (self *Zone) Info(id int64) (*ZoneInfo, error) {
	var res map[string]interface{}
	params := []interface{}{self.Key, id}
	if err := self.Call("domain.zone.info", params, &res); err != nil {
		return nil, err
	}
	return ToZoneInfo(res), nil
}
func (self *Zone) List() ([]*ZoneInfoBase, error) {
	var res []interface{}
	params := []interface{}{self.Key}
	if err := self.Call("domain.zone.list", params, &res); err != nil {
		return nil, err
	}
	zones := make([]*ZoneInfoBase, 0)
	for _, r := range res {
		zone := ToZoneInfoBase(r.(map[string]interface{}))
		zones = append(zones, zone)
	}
	return zones, nil
}
func (self *Zone) Create(name string) (*ZoneInfo, error) {
	var res map[string]interface{}
	createArgs := map[string]interface{}{"name": name}
	params := []interface{}{self.Key, createArgs}
	if err := self.Call("domain.zone.create", params, &res); err != nil {
		return nil, err
	}
	return ToZoneInfo(res), nil
}