Skip to content
Start here

Create an origin cloud region mapping

client.Cache.OriginCloudRegions.New(ctx, params) (*OriginCloudRegionNewResponse, error)
POST/zones/{zone_id}/cache/origin_cloud_regions

Adds a single IP-to-cloud-region mapping for the zone. The IP must be a valid IPv4 or IPv6 address and is normalized to canonical form before storage (RFC 5952 for IPv6). Returns 400 (code 1145) if a mapping for that IP already exists — use PATCH to update an existing entry. The vendor and region are validated against the list from GET /zones/{zone_id}/cache/origin_cloud_regions/supported_regions.

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
ParametersExpand Collapse
params OriginCloudRegionNewParams
ZoneID param.Field[string]Optional

Path param: Identifier.

maxLength32
IP param.Field[string]

Body param: Origin IP address (IPv4 or IPv6). Normalized to canonical form before storage (RFC 5952 for IPv6).

Region param.Field[string]

Body param: Cloud vendor region identifier. Must be a valid region for the specified vendor as returned by the supported_regions endpoint.

Body param: Cloud vendor hosting the origin. Must be one of the supported vendors.

const OriginCloudRegionNewParamsVendorAws OriginCloudRegionNewParamsVendor = "aws"
const OriginCloudRegionNewParamsVendorAzure OriginCloudRegionNewParamsVendor = "azure"
const OriginCloudRegionNewParamsVendorGcp OriginCloudRegionNewParamsVendor = "gcp"
const OriginCloudRegionNewParamsVendorOci OriginCloudRegionNewParamsVendor = "oci"
ReturnsExpand Collapse
type OriginCloudRegionNewResponse struct{…}

Response result for a single origin cloud region mapping.

ID OriginCloudRegionNewResponseID
Editable bool

Whether the setting can be modified by the current user.

A single origin IP-to-cloud-region mapping.

OriginIP string

The origin IP address (IPv4 or IPv6, canonicalized).

Region string

Cloud vendor region identifier.

Vendor OriginCloudRegionVendor

Cloud vendor hosting the origin.

One of the following:
const OriginCloudRegionVendorAws OriginCloudRegionVendor = "aws"
const OriginCloudRegionVendorAzure OriginCloudRegionVendor = "azure"
const OriginCloudRegionVendorGcp OriginCloudRegionVendor = "gcp"
const OriginCloudRegionVendorOci OriginCloudRegionVendor = "oci"
ModifiedOn TimeOptional

Time this mapping was last modified.

formatdate-time
ModifiedOn TimeOptional

Time the mapping was last modified.

formatdate-time

Create an origin cloud region mapping

package main

import (
  "context"
  "fmt"

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

func main() {
  client := cloudflare.NewClient(
    option.WithAPIToken("Sn3lZJTBX6kkg7OdcBUAxOO963GEIyGQqnFTOFYY"),
  )
  originCloudRegion, err := client.Cache.OriginCloudRegions.New(context.TODO(), cache.OriginCloudRegionNewParams{
    ZoneID: cloudflare.F("023e105f4ecef8ad9ca31a8372d0c353"),
    IP: cloudflare.F("192.0.2.1"),
    Region: cloudflare.F("us-east-1"),
    Vendor: cloudflare.F(cache.OriginCloudRegionNewParamsVendorAws),
  })
  if err != nil {
    panic(err.Error())
  }
  fmt.Printf("%+v\n", originCloudRegion.ID)
}
{
  "errors": [],
  "messages": [],
  "result": {
    "editable": true,
    "id": "origin_public_cloud_region",
    "modified_on": "2026-03-01T12:00:00Z",
    "value": {
      "modified_on": "2026-03-01T12:00:00Z",
      "origin-ip": "192.0.2.1",
      "region": "us-east-1",
      "vendor": "aws"
    }
  },
  "success": true
}
{
  "errors": [
    {
      "code": 1145,
      "message": "Unable to create new origin_public_cloud_region setting. The zone setting already exists."
    }
  ],
  "messages": [],
  "result": null,
  "success": false
}
{
  "errors": [
    {
      "code": 1146,
      "message": "Invalid or missing origin IP address."
    }
  ],
  "messages": [],
  "result": null,
  "success": false
}
{
  "errors": [
    {
      "code": 1157,
      "message": "The vendor provided doesn't exist or the region provided does not exist for the specified cloud vendor"
    }
  ],
  "messages": [],
  "result": null,
  "success": false
}
Returns Examples
{
  "errors": [],
  "messages": [],
  "result": {
    "editable": true,
    "id": "origin_public_cloud_region",
    "modified_on": "2026-03-01T12:00:00Z",
    "value": {
      "modified_on": "2026-03-01T12:00:00Z",
      "origin-ip": "192.0.2.1",
      "region": "us-east-1",
      "vendor": "aws"
    }
  },
  "success": true
}
{
  "errors": [
    {
      "code": 1145,
      "message": "Unable to create new origin_public_cloud_region setting. The zone setting already exists."
    }
  ],
  "messages": [],
  "result": null,
  "success": false
}
{
  "errors": [
    {
      "code": 1146,
      "message": "Invalid or missing origin IP address."
    }
  ],
  "messages": [],
  "result": null,
  "success": false
}
{
  "errors": [
    {
      "code": 1157,
      "message": "The vendor provided doesn't exist or the region provided does not exist for the specified cloud vendor"
    }
  ],
  "messages": [],
  "result": null,
  "success": false
}