---
title: Custom Pages
---

[Skip to content](#_top)

[API Reference](https://developers.cloudflare.com/api/terraform)

Copy Markdown

Open in **Claude**Open in **ChatGPT**Open in **Cursor**

---

**Copy Markdown****View as Markdown**

# Custom Pages

#### resource cloudflare\_custom\_pages

##### required Expand Collapse

identifier: String

Custom page type.

[Link to this property](<#(resource)%20custom_pages%20%3E%20(terraform%20resource)%20%3E%20(attribute)%20identifier>)

state: String

The custom page state.

[Link to this property](<#(resource)%20custom_pages%20%3E%20(terraform%20resource)%20%3E%20(attribute)%20state>)

url: String

The URL associated with the custom page.

[Link to this property](<#(resource)%20custom_pages%20%3E%20(terraform%20resource)%20%3E%20(attribute)%20url>)

##### optional Expand Collapse

account\_id?: String

The Account ID to use for this endpoint. Mutually exclusive with the Zone ID.

[Link to this property](<#(resource)%20custom_pages%20%3E%20(terraform%20resource)%20%3E%20(attribute)%20account_id>)

zone\_id?: String

The Zone ID to use for this endpoint. Mutually exclusive with the Account ID.

[Link to this property](<#(resource)%20custom_pages%20%3E%20(terraform%20resource)%20%3E%20(attribute)%20zone_id>)

##### computed Expand Collapse

id: String

Custom page type.

[Link to this property](<#(resource)%20custom_pages%20%3E%20(terraform%20resource)%20%3E%20(attribute)%20id>)

created\_on: Time

[Link to this property](<#(resource)%20custom_pages%20%3E%20(terraform%20resource)%20%3E%20(attribute)%20created_on>)

description: String

[Link to this property](<#(resource)%20custom_pages%20%3E%20(terraform%20resource)%20%3E%20(attribute)%20description>)

modified\_on: Time

[Link to this property](<#(resource)%20custom_pages%20%3E%20(terraform%20resource)%20%3E%20(attribute)%20modified_on>)

preview\_target: String

[Link to this property](<#(resource)%20custom_pages%20%3E%20(terraform%20resource)%20%3E%20(attribute)%20preview_target>)

required\_tokens: List\[String]

[Link to this property](<#(resource)%20custom_pages%20%3E%20(terraform%20resource)%20%3E%20(attribute)%20required_tokens>)

### cloudflare\_custom\_pages

Terraform

HTTPTypeScriptPythonGoTerraform

```
resource "cloudflare_custom_pages" "example_custom_pages" {
  identifier = "ratelimit_block"
  state = "default"
  url = "http://www.example.com"
  zone_id = "zone_id"
}
```

#### data cloudflare\_custom\_pages

##### required Expand Collapse

identifier: String

Custom page type.

[Link to this property](<#(resource)%20custom_pages%20%3E%20(terraform%20datasource-single)%20%3E%20(attribute)%20identifier>)

##### optional Expand Collapse

account\_id?: String

The Account ID to use for this endpoint. Mutually exclusive with the Zone ID.

[Link to this property](<#(resource)%20custom_pages%20%3E%20(terraform%20datasource-single)%20%3E%20(attribute)%20account_id>)

zone\_id?: String

The Zone ID to use for this endpoint. Mutually exclusive with the Account ID.

[Link to this property](<#(resource)%20custom_pages%20%3E%20(terraform%20datasource-single)%20%3E%20(attribute)%20zone_id>)

##### computed Expand Collapse

id: String

Custom page type.

[Link to this property](<#(resource)%20custom_pages%20%3E%20(terraform%20datasource-single)%20%3E%20(attribute)%20id>)

created\_on: Time

[Link to this property](<#(resource)%20custom_pages%20%3E%20(terraform%20datasource-single)%20%3E%20(attribute)%20created_on>)

description: String

[Link to this property](<#(resource)%20custom_pages%20%3E%20(terraform%20datasource-single)%20%3E%20(attribute)%20description>)

modified\_on: Time

[Link to this property](<#(resource)%20custom_pages%20%3E%20(terraform%20datasource-single)%20%3E%20(attribute)%20modified_on>)

preview\_target: String

[Link to this property](<#(resource)%20custom_pages%20%3E%20(terraform%20datasource-single)%20%3E%20(attribute)%20preview_target>)

state: String

The custom page state.

[Link to this property](<#(resource)%20custom_pages%20%3E%20(terraform%20datasource-single)%20%3E%20(attribute)%20state>)

url: String

The URL associated with the custom page.

[Link to this property](<#(resource)%20custom_pages%20%3E%20(terraform%20datasource-single)%20%3E%20(attribute)%20url>)

required\_tokens: List\[String]

[Link to this property](<#(resource)%20custom_pages%20%3E%20(terraform%20datasource-single)%20%3E%20(attribute)%20required_tokens>)

### cloudflare\_custom\_pages

Terraform

HTTPTypeScriptPythonGoTerraform

```
data "cloudflare_custom_pages" "example_custom_pages" {
  identifier = "ratelimit_block"
  account_id = "account_id"
  zone_id = "zone_id"
}
```

#### data cloudflare\_custom\_pages\_list

##### optional Expand Collapse

account\_id?: String

The Account ID to use for this endpoint. Mutually exclusive with the Zone ID.

[Link to this property](<#(resource)%20custom_pages%20%3E%20(terraform%20datasource-plural)%20%3E%20(attribute)%20account_id>)

zone\_id?: String

The Zone ID to use for this endpoint. Mutually exclusive with the Account ID.

[Link to this property](<#(resource)%20custom_pages%20%3E%20(terraform%20datasource-plural)%20%3E%20(attribute)%20zone_id>)

max\_items?: Int64

Max items to fetch, default: 1000

[Link to this property](<#(resource)%20custom_pages%20%3E%20(terraform%20datasource-plural)%20%3E%20(attribute)%20max_items>)

##### computed Expand Collapse

<details>

<summary>

result: List\[Attributes]

The items returned by the data source

</summary>

id: String

<a href="#(resource)%20custom_pages%20%3E%20(terraform%20datasource-plural)%20%3E%20(attribute)%20result%20%3E%20(attribute)%20id">Link to this property</a>

created\_on: Time

<a href="#(resource)%20custom_pages%20%3E%20(terraform%20datasource-plural)%20%3E%20(attribute)%20result%20%3E%20(attribute)%20created_on">Link to this property</a>

description: String

<a href="#(resource)%20custom_pages%20%3E%20(terraform%20datasource-plural)%20%3E%20(attribute)%20result%20%3E%20(attribute)%20description">Link to this property</a>

modified\_on: Time

<a href="#(resource)%20custom_pages%20%3E%20(terraform%20datasource-plural)%20%3E%20(attribute)%20result%20%3E%20(attribute)%20modified_on">Link to this property</a>

preview\_target: String

<a href="#(resource)%20custom_pages%20%3E%20(terraform%20datasource-plural)%20%3E%20(attribute)%20result%20%3E%20(attribute)%20preview_target">Link to this property</a>

required\_tokens: List\[String]

<a href="#(resource)%20custom_pages%20%3E%20(terraform%20datasource-plural)%20%3E%20(attribute)%20result%20%3E%20(attribute)%20required_tokens">Link to this property</a>

state: String

The custom page state.

<a href="#(resource)%20custom_pages%20%3E%20(terraform%20datasource-plural)%20%3E%20(attribute)%20result%20%3E%20(attribute)%20state">Link to this property</a>

url: String

The URL associated with the custom page.

<a href="#(resource)%20custom_pages%20%3E%20(terraform%20datasource-plural)%20%3E%20(attribute)%20result%20%3E%20(attribute)%20url">Link to this property</a>

</details>

[Link to this property](<#(resource)%20custom_pages%20%3E%20(terraform%20datasource-plural)%20%3E%20(attribute)%20result>)

### cloudflare\_custom\_pages\_list

Terraform

HTTPTypeScriptPythonGoTerraform

```
data "cloudflare_custom_pages_list" "example_custom_pages_list" {
  account_id = "account_id"
  zone_id = "zone_id"
}
```

#### Custom PagesAssets

#### resource cloudflare\_custom\_page\_asset

##### required Expand Collapse

name: String

The unique name of the custom asset. Can only contain letters (A-Z, a-z), numbers (0-9), and underscores (\_).

[Link to this property](<#(resource)%20custom_pages.assets%20%3E%20(terraform%20resource)%20%3E%20(attribute)%20name>)

description: String

A short description of the custom asset.

[Link to this property](<#(resource)%20custom_pages.assets%20%3E%20(terraform%20resource)%20%3E%20(attribute)%20description>)

url: String

The URL where the asset content is fetched from.

[Link to this property](<#(resource)%20custom_pages.assets%20%3E%20(terraform%20resource)%20%3E%20(attribute)%20url>)

##### optional Expand Collapse

account\_id?: String

The Account ID to use for this endpoint. Mutually exclusive with the Zone ID.

[Link to this property](<#(resource)%20custom_pages.assets%20%3E%20(terraform%20resource)%20%3E%20(attribute)%20account_id>)

zone\_id?: String

The Zone ID to use for this endpoint. Mutually exclusive with the Account ID.

[Link to this property](<#(resource)%20custom_pages.assets%20%3E%20(terraform%20resource)%20%3E%20(attribute)%20zone_id>)

##### computed Expand Collapse

id: String

The unique name of the custom asset. Can only contain letters (A-Z, a-z), numbers (0-9), and underscores (\_).

[Link to this property](<#(resource)%20custom_pages.assets%20%3E%20(terraform%20resource)%20%3E%20(attribute)%20id>)

last\_updated: Time

[Link to this property](<#(resource)%20custom_pages.assets%20%3E%20(terraform%20resource)%20%3E%20(attribute)%20last_updated>)

size\_bytes: Int64

The size of the asset content in bytes.

[Link to this property](<#(resource)%20custom_pages.assets%20%3E%20(terraform%20resource)%20%3E%20(attribute)%20size_bytes>)

### cloudflare\_custom\_page\_asset

Terraform

HTTPTypeScriptPythonGoTerraform

```
resource "cloudflare_custom_page_asset" "example_custom_page_asset" {
  description = "Custom 500 error page"
  name = "my_custom_error_page"
  url = "https://example.com/error.html"
  zone_id = "zone_id"
}
```

#### data cloudflare\_custom\_page\_asset

##### required Expand Collapse

asset\_name: String

The unique name of the custom asset. Can only contain letters (A-Z, a-z), numbers (0-9), and underscores (\_).

[Link to this property](<#(resource)%20custom_pages.assets%20%3E%20(terraform%20datasource-single)%20%3E%20(attribute)%20asset_name>)

##### optional Expand Collapse

account\_id?: String

The Account ID to use for this endpoint. Mutually exclusive with the Zone ID.

[Link to this property](<#(resource)%20custom_pages.assets%20%3E%20(terraform%20datasource-single)%20%3E%20(attribute)%20account_id>)

zone\_id?: String

The Zone ID to use for this endpoint. Mutually exclusive with the Account ID.

[Link to this property](<#(resource)%20custom_pages.assets%20%3E%20(terraform%20datasource-single)%20%3E%20(attribute)%20zone_id>)

##### computed Expand Collapse

id: String

The unique name of the custom asset. Can only contain letters (A-Z, a-z), numbers (0-9), and underscores (\_).

[Link to this property](<#(resource)%20custom_pages.assets%20%3E%20(terraform%20datasource-single)%20%3E%20(attribute)%20id>)

description: String

A short description of the custom asset.

[Link to this property](<#(resource)%20custom_pages.assets%20%3E%20(terraform%20datasource-single)%20%3E%20(attribute)%20description>)

last\_updated: Time

[Link to this property](<#(resource)%20custom_pages.assets%20%3E%20(terraform%20datasource-single)%20%3E%20(attribute)%20last_updated>)

name: String

The unique name of the custom asset. Can only contain letters (A-Z, a-z), numbers (0-9), and underscores (\_).

[Link to this property](<#(resource)%20custom_pages.assets%20%3E%20(terraform%20datasource-single)%20%3E%20(attribute)%20name>)

size\_bytes: Int64

The size of the asset content in bytes.

[Link to this property](<#(resource)%20custom_pages.assets%20%3E%20(terraform%20datasource-single)%20%3E%20(attribute)%20size_bytes>)

url: String

The URL where the asset content is fetched from.

[Link to this property](<#(resource)%20custom_pages.assets%20%3E%20(terraform%20datasource-single)%20%3E%20(attribute)%20url>)

### cloudflare\_custom\_page\_asset

Terraform

HTTPTypeScriptPythonGoTerraform

```
data "cloudflare_custom_page_asset" "example_custom_page_asset" {
  asset_name = "my_custom_error_page"
  account_id = "account_id"
  zone_id = "zone_id"
}
```

#### data cloudflare\_custom\_page\_assets

##### optional Expand Collapse

account\_id?: String

The Account ID to use for this endpoint. Mutually exclusive with the Zone ID.

[Link to this property](<#(resource)%20custom_pages.assets%20%3E%20(terraform%20datasource-plural)%20%3E%20(attribute)%20account_id>)

zone\_id?: String

The Zone ID to use for this endpoint. Mutually exclusive with the Account ID.

[Link to this property](<#(resource)%20custom_pages.assets%20%3E%20(terraform%20datasource-plural)%20%3E%20(attribute)%20zone_id>)

max\_items?: Int64

Max items to fetch, default: 1000

[Link to this property](<#(resource)%20custom_pages.assets%20%3E%20(terraform%20datasource-plural)%20%3E%20(attribute)%20max_items>)

##### computed Expand Collapse

<details>

<summary>

result: List\[Attributes]

The items returned by the data source

</summary>

id: String

The unique name of the custom asset. Can only contain letters (A-Z, a-z), numbers (0-9), and underscores (\_).

<a href="#(resource)%20custom_pages.assets%20%3E%20(terraform%20datasource-plural)%20%3E%20(attribute)%20result%20%3E%20(attribute)%20id">Link to this property</a>

description: String

A short description of the custom asset.

<a href="#(resource)%20custom_pages.assets%20%3E%20(terraform%20datasource-plural)%20%3E%20(attribute)%20result%20%3E%20(attribute)%20description">Link to this property</a>

last\_updated: Time

<a href="#(resource)%20custom_pages.assets%20%3E%20(terraform%20datasource-plural)%20%3E%20(attribute)%20result%20%3E%20(attribute)%20last_updated">Link to this property</a>

name: String

The unique name of the custom asset. Can only contain letters (A-Z, a-z), numbers (0-9), and underscores (\_).

<a href="#(resource)%20custom_pages.assets%20%3E%20(terraform%20datasource-plural)%20%3E%20(attribute)%20result%20%3E%20(attribute)%20name">Link to this property</a>

size\_bytes: Int64

The size of the asset content in bytes.

<a href="#(resource)%20custom_pages.assets%20%3E%20(terraform%20datasource-plural)%20%3E%20(attribute)%20result%20%3E%20(attribute)%20size_bytes">Link to this property</a>

url: String

The URL where the asset content is fetched from.

<a href="#(resource)%20custom_pages.assets%20%3E%20(terraform%20datasource-plural)%20%3E%20(attribute)%20result%20%3E%20(attribute)%20url">Link to this property</a>

</details>

[Link to this property](<#(resource)%20custom_pages.assets%20%3E%20(terraform%20datasource-plural)%20%3E%20(attribute)%20result>)

### cloudflare\_custom\_page\_assets

Terraform

HTTPTypeScriptPythonGoTerraform

```
data "cloudflare_custom_page_assets" "example_custom_page_assets" {
  account_id = "account_id"
  zone_id = "zone_id"
}
```