# Regional Hostnames ## List Regional Hostnames `client.addressing.regionalHostnames.list(RegionalHostnameListParamsparams, RequestOptionsoptions?): SinglePage` **get** `/zones/{zone_id}/addressing/regional_hostnames` List all Regional Hostnames within a zone. ### Parameters - `params: RegionalHostnameListParams` - `zone_id: string` Identifier. ### Returns - `RegionalHostnameListResponse` - `created_on: string` When the regional hostname was created - `hostname: string` DNS hostname to be regionalized, must be a subdomain of the zone. Wildcards are supported for one level, e.g `*.example.com` - `region_key: string` Identifying key for the region - `routing?: string` Configure which routing method to use for the regional hostname ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); // Automatically fetches more pages as needed. for await (const regionalHostnameListResponse of client.addressing.regionalHostnames.list({ zone_id: '023e105f4ecef8ad9ca31a8372d0c353', })) { console.log(regionalHostnameListResponse.created_on); } ``` #### Response ```json { "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" } ], "result_info": { "count": 1, "page": 1, "per_page": 20, "total_count": 2000, "total_pages": 100 } } ``` ## Fetch Regional Hostname `client.addressing.regionalHostnames.get(stringhostname, RegionalHostnameGetParamsparams, RequestOptionsoptions?): RegionalHostnameGetResponse` **get** `/zones/{zone_id}/addressing/regional_hostnames/{hostname}` Fetch the configuration for a specific Regional Hostname, within a zone. ### Parameters - `hostname: string` DNS hostname to be regionalized, must be a subdomain of the zone. Wildcards are supported for one level, e.g `*.example.com` - `params: RegionalHostnameGetParams` - `zone_id: string` Identifier. ### Returns - `RegionalHostnameGetResponse` - `created_on: string` When the regional hostname was created - `hostname: string` DNS hostname to be regionalized, must be a subdomain of the zone. Wildcards are supported for one level, e.g `*.example.com` - `region_key: string` Identifying key for the region - `routing?: string` Configure which routing method to use for the regional hostname ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const regionalHostname = await client.addressing.regionalHostnames.get('foo.example.com', { zone_id: '023e105f4ecef8ad9ca31a8372d0c353', }); console.log(regionalHostname.created_on); ``` #### Response ```json { "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" } } ``` ## Create Regional Hostname `client.addressing.regionalHostnames.create(RegionalHostnameCreateParamsparams, RequestOptionsoptions?): RegionalHostnameCreateResponse` **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](https://developers.cloudflare.com/data-localization/regional-services/get-started/). ### Parameters - `params: RegionalHostnameCreateParams` - `zone_id: string` Path param: Identifier. - `hostname: 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` - `region_key: string` Body param: Identifying key for the region - `routing?: string` Body param: Configure which routing method to use for the regional hostname ### Returns - `RegionalHostnameCreateResponse` - `created_on: string` When the regional hostname was created - `hostname: string` DNS hostname to be regionalized, must be a subdomain of the zone. Wildcards are supported for one level, e.g `*.example.com` - `region_key: string` Identifying key for the region - `routing?: string` Configure which routing method to use for the regional hostname ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const regionalHostname = await client.addressing.regionalHostnames.create({ zone_id: '023e105f4ecef8ad9ca31a8372d0c353', hostname: 'foo.example.com', region_key: 'ca', }); console.log(regionalHostname.created_on); ``` #### Response ```json { "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" } } ``` ## Update Regional Hostname `client.addressing.regionalHostnames.edit(stringhostname, RegionalHostnameEditParamsparams, RequestOptionsoptions?): RegionalHostnameEditResponse` **patch** `/zones/{zone_id}/addressing/regional_hostnames/{hostname}` Update the configuration for a specific Regional Hostname. Only the region_key of a hostname is mutable. ### Parameters - `hostname: string` DNS hostname to be regionalized, must be a subdomain of the zone. Wildcards are supported for one level, e.g `*.example.com` - `params: RegionalHostnameEditParams` - `zone_id: string` Path param: Identifier. - `region_key: string` Body param: Identifying key for the region ### Returns - `RegionalHostnameEditResponse` - `created_on: string` When the regional hostname was created - `hostname: string` DNS hostname to be regionalized, must be a subdomain of the zone. Wildcards are supported for one level, e.g `*.example.com` - `region_key: string` Identifying key for the region - `routing?: string` Configure which routing method to use for the regional hostname ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const response = await client.addressing.regionalHostnames.edit('foo.example.com', { zone_id: '023e105f4ecef8ad9ca31a8372d0c353', region_key: 'ca', }); console.log(response.created_on); ``` #### Response ```json { "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" } } ``` ## Delete Regional Hostname `client.addressing.regionalHostnames.delete(stringhostname, RegionalHostnameDeleteParamsparams, RequestOptionsoptions?): RegionalHostnameDeleteResponse` **delete** `/zones/{zone_id}/addressing/regional_hostnames/{hostname}` Delete the region configuration for a specific Regional Hostname. ### Parameters - `hostname: string` DNS hostname to be regionalized, must be a subdomain of the zone. Wildcards are supported for one level, e.g `*.example.com` - `params: RegionalHostnameDeleteParams` - `zone_id: string` Identifier. ### Returns - `RegionalHostnameDeleteResponse` - `errors: Array` - `code: number` - `message: string` - `documentation_url?: string` - `source?: Source` - `pointer?: string` - `messages: Array` - `code: number` - `message: string` - `documentation_url?: string` - `source?: Source` - `pointer?: string` - `success: true` Whether the API call was successful. - `true` ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); const regionalHostname = await client.addressing.regionalHostnames.delete('foo.example.com', { zone_id: '023e105f4ecef8ad9ca31a8372d0c353', }); console.log(regionalHostname.errors); ``` #### Response ```json { "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 } ``` ## Domain Types ### Regional Hostname List Response - `RegionalHostnameListResponse` - `created_on: string` When the regional hostname was created - `hostname: string` DNS hostname to be regionalized, must be a subdomain of the zone. Wildcards are supported for one level, e.g `*.example.com` - `region_key: string` Identifying key for the region - `routing?: string` Configure which routing method to use for the regional hostname ### Regional Hostname Get Response - `RegionalHostnameGetResponse` - `created_on: string` When the regional hostname was created - `hostname: string` DNS hostname to be regionalized, must be a subdomain of the zone. Wildcards are supported for one level, e.g `*.example.com` - `region_key: string` Identifying key for the region - `routing?: string` Configure which routing method to use for the regional hostname ### Regional Hostname Create Response - `RegionalHostnameCreateResponse` - `created_on: string` When the regional hostname was created - `hostname: string` DNS hostname to be regionalized, must be a subdomain of the zone. Wildcards are supported for one level, e.g `*.example.com` - `region_key: string` Identifying key for the region - `routing?: string` Configure which routing method to use for the regional hostname ### Regional Hostname Edit Response - `RegionalHostnameEditResponse` - `created_on: string` When the regional hostname was created - `hostname: string` DNS hostname to be regionalized, must be a subdomain of the zone. Wildcards are supported for one level, e.g `*.example.com` - `region_key: string` Identifying key for the region - `routing?: string` Configure which routing method to use for the regional hostname ### Regional Hostname Delete Response - `RegionalHostnameDeleteResponse` - `errors: Array` - `code: number` - `message: string` - `documentation_url?: string` - `source?: Source` - `pointer?: string` - `messages: Array` - `code: number` - `message: string` - `documentation_url?: string` - `source?: Source` - `pointer?: string` - `success: true` Whether the API call was successful. - `true` # Regions ## List Regions `client.addressing.regionalHostnames.regions.list(RegionListParamsparams, RequestOptionsoptions?): SinglePage` **get** `/accounts/{account_id}/addressing/regional_hostnames/regions` List all Regional Services regions available for use by this account. ### Parameters - `params: RegionListParams` - `account_id: string` Identifier. ### Returns - `RegionListResponse` - `key?: string` Identifying key for the region - `label?: string` Human-readable text label for the region ### Example ```node import Cloudflare from 'cloudflare'; const client = new Cloudflare({ apiToken: process.env['CLOUDFLARE_API_TOKEN'], // This is the default and can be omitted }); // Automatically fetches more pages as needed. for await (const regionListResponse of client.addressing.regionalHostnames.regions.list({ account_id: '023e105f4ecef8ad9ca31a8372d0c353', })) { console.log(regionListResponse.key); } ``` #### Response ```json { "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": [ { "key": "ca", "label": "Canada" } ], "result_info": { "count": 1, "page": 1, "per_page": 20, "total_count": 2000, "total_pages": 100 } } ``` ## Domain Types ### Region List Response - `RegionListResponse` - `key?: string` Identifying key for the region - `label?: string` Human-readable text label for the region