github.com/opentelekomcloud/gophertelekomcloud@v0.9.3/openstack/waf-premium/v1/rules/UpdateCustom.go (about) 1 package rules 2 3 import ( 4 "github.com/opentelekomcloud/gophertelekomcloud" 5 "github.com/opentelekomcloud/gophertelekomcloud/internal/build" 6 "github.com/opentelekomcloud/gophertelekomcloud/internal/extract" 7 ) 8 9 // UpdateCustom is used to update a precise protection rule. 10 func UpdateCustom(client *golangsdk.ServiceClient, policyId, ruleId string, opts CreateCustomOpts) (*CustomRule, error) { 11 b, err := build.RequestBody(opts, "") 12 if err != nil { 13 return nil, err 14 } 15 16 // PUT /v1/{project_id}/waf/policy/{policy_id}/custom/{rule_id} 17 raw, err := client.Put(client.ServiceURL("waf", "policy", policyId, "custom", ruleId), b, nil, &golangsdk.RequestOpts{ 18 OkCodes: []int{200}, 19 MoreHeaders: map[string]string{"Content-Type": "application/json;charset=utf8"}, 20 }) 21 if err != nil { 22 return nil, err 23 } 24 var res CustomRule 25 return &res, extract.Into(raw.Body, &res) 26 }