func (box *BigIp) AddPoolItem(item Pool) []Pool {   
        box.Pools = append(box.Pools, item)
        return box.Pools
}
Add Pool to BigIp.Pools
package main
type VirtualServerCatalog struct {
    Items []struct {
        Name string         `json:"name"`
        Description string  `json:"description"`
        Destination string  `json:"destination"`
        Enabled bool        `json:"enabled"`
        Mask string         `json:"mask"`
        Pool string         `json:"pool"`
        Source string       `json:"source"`
    }                       `json:"items"`
}
type VirtualServer struct {
        Name string         `json:"name"`
        Description string  `json:"description"`
        Destination string  `json:"destination"`
        Enabled bool        `json:"enabled"`
        Mask string         `json:"mask"`
        Pool string         `json:"pool"`
        Source string       `json:"source"`
}
type BigipPoolCatalog struct {
	Pools []struct {
        Fullpath string     `json:"fullPath"`
		Name string 		`json:"name"`
		Description string  `json:"description"`
        Balancing string    `json:"loadBalancingMode"`
        Monitor string      `json:"monitor"`
	} 						`json:"items"`
}
type BigipNodeCatalog struct {
	Nodes []struct {
		Address string 		`json:"address"`
		Name string 		`json:"name"`
	} 						`json:"items"`
}
type ConsulCatalog struct {
	Members []struct {
		Address string 		`json:"address"`
		Name    string 		`json:"name"`
	} 						`json:"members"`
	Name  string 			`json:"name"`
	Pools []struct {
		Members []struct {
			Address string 	`json:"address"`
			Name    string 	`json:"name"`
		} 					`json:"members"`
		Pool string 		`json:"pool"`
        Fullpath string     `json:"fullPath"`
        Balancing string    `json:"loadBalancingMode"`
        Monitor string      `json:"monitor"`
	} 						`json:"pools"`
}
type Member struct {
        Name string         `json:"name"`
        Address string      `json:"address"`
}
type PoolMember struct{
    Name string             `json:"name"`
}
type Members struct{
    Balancing string        `json:"loadBalancingMode"`
    Members[] PoolMember    `json:"members"`
}
type Pool struct {
        Fullpath string     `json:"fullPath"`
        Name string         `json:"name"`
        Balancing string    `json:"loadBalancingMode"`
        Monitor string      `json:"monitor"`
        Members []Member    `json:"members"`
}
type BigIp struct {
        Members []Member    `json:"members"`
        Pools []Pool        `json:"pools"`
}
func (box *Members) AddMember(item PoolMember) []PoolMember {
        box.Members = append(box.Members, item)
        return box.Members
}
func (box *BigIp) AddItem(item Member) []Member {
        box.Members = append(box.Members, item)
        return box.Members
}
func (box *Pool) AddMemberItem(item Member) []Member {
        box.Members = append(box.Members, item)
        return box.Members
}