Skip to content
Start here

Update URL Normalization settings

client.URLNormalization.Update(ctx, params) (*URLNormalizationUpdateResponse, error)
PUT/zones/{zone_id}/url_normalization

Updates the URL Normalization settings.

Security
API Token

The preferred authorization scheme for interacting with the Cloudflare API. Create a token.

Example:Authorization: Bearer Sn3lZJTBX6kkg7OdcBUAxOO963GEIyGQqnFTOFYY
API Email + API Key

The previous authorization scheme for interacting with the Cloudflare API, used in conjunction with a Global API key.

Example:X-Auth-Email: user@example.com

The previous authorization scheme for interacting with the Cloudflare API. When possible, use API tokens instead of Global API keys.

Example:X-Auth-Key: 144c9defac04969c7bfad8efaa8ea194
Accepted Permissions (at least one required)
Response Compression WriteConfig Settings WriteDynamic URL Redirects WriteCache Settings WriteCustom Errors WriteOrigin WriteManaged headers WriteZone Transform Rules WriteMass URL Redirects WriteMagic Firewall WriteL4 DDoS Managed Ruleset WriteHTTP DDoS Managed Ruleset WriteSanitize WriteTransform Rules WriteSelect Configuration WriteBot Management WriteZone WAF WriteAccount WAF WriteAccount Rulesets WriteLogs WriteLogs Write
ParametersExpand Collapse
params URLNormalizationUpdateParams
ZoneID param.Field[string]

Path param: The unique ID of the zone.

Body param: The scope of the URL normalization.

const URLNormalizationUpdateParamsScopeIncoming URLNormalizationUpdateParamsScope = "incoming"
const URLNormalizationUpdateParamsScopeBoth URLNormalizationUpdateParamsScope = "both"
const URLNormalizationUpdateParamsScopeNone URLNormalizationUpdateParamsScope = "none"

Body param: The type of URL normalization performed by Cloudflare.

const URLNormalizationUpdateParamsTypeCloudflare URLNormalizationUpdateParamsType = "cloudflare"
const URLNormalizationUpdateParamsTypeRfc3986 URLNormalizationUpdateParamsType = "rfc3986"
ReturnsExpand Collapse
type URLNormalizationUpdateResponse struct{…}

A result.

Scope URLNormalizationUpdateResponseScope

The scope of the URL normalization.

One of the following:
const URLNormalizationUpdateResponseScopeIncoming URLNormalizationUpdateResponseScope = "incoming"
const URLNormalizationUpdateResponseScopeBoth URLNormalizationUpdateResponseScope = "both"
const URLNormalizationUpdateResponseScopeNone URLNormalizationUpdateResponseScope = "none"
Type URLNormalizationUpdateResponseType

The type of URL normalization performed by Cloudflare.

One of the following:
const URLNormalizationUpdateResponseTypeCloudflare URLNormalizationUpdateResponseType = "cloudflare"
const URLNormalizationUpdateResponseTypeRfc3986 URLNormalizationUpdateResponseType = "rfc3986"

Update URL Normalization settings

package main

import (
  "context"
  "fmt"

  "github.com/cloudflare/cloudflare-go"
  "github.com/cloudflare/cloudflare-go/option"
  "github.com/cloudflare/cloudflare-go/url_normalization"
)

func main() {
  client := cloudflare.NewClient(
    option.WithAPIToken("Sn3lZJTBX6kkg7OdcBUAxOO963GEIyGQqnFTOFYY"),
  )
  urlNormalization, err := client.URLNormalization.Update(context.TODO(), url_normalization.URLNormalizationUpdateParams{
    ZoneID: cloudflare.F("9f1839b6152d298aca64c4e906b6d074"),
    Scope: cloudflare.F(url_normalization.URLNormalizationUpdateParamsScopeIncoming),
    Type: cloudflare.F(url_normalization.URLNormalizationUpdateParamsTypeCloudflare),
  })
  if err != nil {
    panic(err.Error())
  }
  fmt.Printf("%+v\n", urlNormalization.Scope)
}
{
  "errors": [
    {
      "message": "something bad happened",
      "code": 10000,
      "source": {
        "pointer": "/rules/0/action"
      }
    }
  ],
  "messages": [
    {
      "message": "something bad happened",
      "code": 10000,
      "source": {
        "pointer": "/rules/0/action"
      }
    }
  ],
  "result": {
    "scope": "incoming",
    "type": "cloudflare"
  },
  "success": true
}
Returns Examples
{
  "errors": [
    {
      "message": "something bad happened",
      "code": 10000,
      "source": {
        "pointer": "/rules/0/action"
      }
    }
  ],
  "messages": [
    {
      "message": "something bad happened",
      "code": 10000,
      "source": {
        "pointer": "/rules/0/action"
      }
    }
  ],
  "result": {
    "scope": "incoming",
    "type": "cloudflare"
  },
  "success": true
}