Skip to content
Start here

Create Regional Hostname

client.Addressing.RegionalHostnames.New(ctx, params) (*RegionalHostnameNewResponse, error)
POST/zones/{zone_id}/addressing/regional_hostnames

Create a new Regional Hostname entry. Cloudflare will only use data centers that are physically located within the chosen region to decrypt and service HTTPS traffic. Learn more about Regional Services.

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)
DNS Write
ParametersExpand Collapse
params RegionalHostnameNewParams
ZoneID param.Field[string]

Path param: Identifier.

maxLength32
Hostname param.Field[string]

Body param: DNS hostname to be regionalized, must be a subdomain of the zone. Wildcards are supported for one level, e.g *.example.com

RegionKey param.Field[string]

Body param: Identifying key for the region

Routing param.Field[string]optional

Body param: Configure which routing method to use for the regional hostname

ReturnsExpand Collapse
type RegionalHostnameNewResponse struct{…}
CreatedOn Time

When the regional hostname was created

formatdate-time
Hostname string

DNS hostname to be regionalized, must be a subdomain of the zone. Wildcards are supported for one level, e.g *.example.com

RegionKey string

Identifying key for the region

Routing stringoptional

Configure which routing method to use for the regional hostname

Create Regional Hostname

package main

import (
  "context"
  "fmt"

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

func main() {
  client := cloudflare.NewClient(
    option.WithAPIToken("Sn3lZJTBX6kkg7OdcBUAxOO963GEIyGQqnFTOFYY"),
  )
  regionalHostname, err := client.Addressing.RegionalHostnames.New(context.TODO(), addressing.RegionalHostnameNewParams{
    ZoneID: cloudflare.F("023e105f4ecef8ad9ca31a8372d0c353"),
    Hostname: cloudflare.F("foo.example.com"),
    RegionKey: cloudflare.F("ca"),
  })
  if err != nil {
    panic(err.Error())
  }
  fmt.Printf("%+v\n", regionalHostname.CreatedOn)
}
{
  "errors": [
    {
      "code": 1000,
      "message": "message",
      "documentation_url": "documentation_url",
      "source": {
        "pointer": "pointer"
      }
    }
  ],
  "messages": [
    {
      "code": 1000,
      "message": "message",
      "documentation_url": "documentation_url",
      "source": {
        "pointer": "pointer"
      }
    }
  ],
  "success": true,
  "result": {
    "created_on": "2014-01-01T05:20:00.12345Z",
    "hostname": "foo.example.com",
    "region_key": "ca",
    "routing": "dns"
  }
}
Returns Examples
{
  "errors": [
    {
      "code": 1000,
      "message": "message",
      "documentation_url": "documentation_url",
      "source": {
        "pointer": "pointer"
      }
    }
  ],
  "messages": [
    {
      "code": 1000,
      "message": "message",
      "documentation_url": "documentation_url",
      "source": {
        "pointer": "pointer"
      }
    }
  ],
  "success": true,
  "result": {
    "created_on": "2014-01-01T05:20:00.12345Z",
    "hostname": "foo.example.com",
    "region_key": "ca",
    "routing": "dns"
  }
}