github.com/opentelekomcloud/gophertelekomcloud@v0.9.3/openstack/waf-premium/v1/instances/List.go (about) 1 package instances 2 3 import ( 4 golangsdk "github.com/opentelekomcloud/gophertelekomcloud" 5 "github.com/opentelekomcloud/gophertelekomcloud/internal/extract" 6 ) 7 8 func List(client *golangsdk.ServiceClient, opts ListOpts) ([]Instance, error) { 9 // GET /v1/{project_id}/premium-waf/instance 10 query, err := golangsdk.BuildQueryString(opts) 11 if err != nil { 12 return nil, err 13 } 14 15 url := client.ServiceURL("premium-waf", "instance") + query.String() 16 raw, err := client.Get(url, nil, nil) 17 if err != nil { 18 return nil, err 19 } 20 21 var res []Instance 22 err = extract.IntoSlicePtr(raw.Body, &res, "items") 23 return res, err 24 } 25 26 type ListOpts struct { 27 // Fuzzy query for dedicated WAF engine names. 28 // Only Prefix and Suffix match query are supported 29 Name string `json:"instancename"` 30 }