---
title: R2
---

[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**

# R2

#### R2Buckets

#### resource cloudflare\_r2\_bucket

##### required Expand Collapse

name: String

Name of the bucket.

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

account\_id: String

Cloudflare account ID that owns the R2 resource.

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

##### optional Expand Collapse

location?: String

Location of the bucket.

[Link to this property](<#(resource)%20r2.buckets%20%3E%20(terraform%20resource)%20%3E%20(attribute)%20location>)

storage\_class?: String

Storage class for newly uploaded objects, unless specified otherwise.

[Link to this property](<#(resource)%20r2.buckets%20%3E%20(terraform%20resource)%20%3E%20(attribute)%20storage_class>)

##### computed Expand Collapse

id: String

Name of the bucket.

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

creation\_date: String

Creation timestamp.

[Link to this property](<#(resource)%20r2.buckets%20%3E%20(terraform%20resource)%20%3E%20(attribute)%20creation_date>)

jurisdiction: String

Jurisdiction where objects in this bucket are guaranteed to be stored.

[Link to this property](<#(resource)%20r2.buckets%20%3E%20(terraform%20resource)%20%3E%20(attribute)%20jurisdiction>)

### cloudflare\_r2\_bucket

Terraform

HTTPTypeScriptPythonGoTerraform

```
resource "cloudflare_r2_bucket" "example_r2_bucket" {
  account_id = "023e105f4ecef8ad9ca31a8372d0c353"
  name = "example-bucket"
  location = "apac"
  storage_class = "Standard"
}
```

#### data cloudflare\_r2\_bucket

##### required Expand Collapse

bucket\_name: String

Name of the bucket.

[Link to this property](<#(resource)%20r2.buckets%20%3E%20(terraform%20datasource-single)%20%3E%20(attribute)%20bucket_name>)

account\_id: String

Cloudflare account ID that owns the R2 resource.

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

##### computed Expand Collapse

id: String

Name of the bucket.

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

creation\_date: String

Creation timestamp.

[Link to this property](<#(resource)%20r2.buckets%20%3E%20(terraform%20datasource-single)%20%3E%20(attribute)%20creation_date>)

jurisdiction: String

Jurisdiction where objects in this bucket are guaranteed to be stored.

[Link to this property](<#(resource)%20r2.buckets%20%3E%20(terraform%20datasource-single)%20%3E%20(attribute)%20jurisdiction>)

location: String

Location of the bucket.

[Link to this property](<#(resource)%20r2.buckets%20%3E%20(terraform%20datasource-single)%20%3E%20(attribute)%20location>)

name: String

Name of the bucket.

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

storage\_class: String

Storage class for newly uploaded objects, unless specified otherwise.

[Link to this property](<#(resource)%20r2.buckets%20%3E%20(terraform%20datasource-single)%20%3E%20(attribute)%20storage_class>)

### cloudflare\_r2\_bucket

Terraform

HTTPTypeScriptPythonGoTerraform

```
data "cloudflare_r2_bucket" "example_r2_bucket" {
  account_id = "023e105f4ecef8ad9ca31a8372d0c353"
  bucket_name = "example-bucket"
}
```

#### R2BucketsLifecycle

#### resource cloudflare\_r2\_bucket\_lifecycle

##### required Expand Collapse

account\_id: String

Cloudflare account ID that owns the R2 resource.

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

bucket\_name: String

Name of the bucket.

[Link to this property](<#(resource)%20r2.buckets.lifecycle%20%3E%20(terraform%20resource)%20%3E%20(attribute)%20bucket_name>)

##### optional Expand Collapse

<details>

<summary>

rules?: List\[Attributes]

</summary>

id: String

Unique identifier for this rule.

<a href="#(resource)%20r2.buckets.lifecycle%20%3E%20(terraform%20resource)%20%3E%20(attribute)%20rules%20%3E%20(attribute)%20id">Link to this property</a>

<details>

<summary>

conditions: Attributes

Conditions that apply to all transitions of this rule.

</summary>

prefix: String

Transitions will only apply to objects/uploads in the bucket that start with the given prefix, an empty prefix can be provided to scope rule to all objects/uploads.

<a href="#(resource)%20r2.buckets.lifecycle%20%3E%20(terraform%20resource)%20%3E%20(attribute)%20rules%20%3E%20(attribute)%20conditions%20%3E%20(attribute)%20prefix">Link to this property</a>

</details>

<a href="#(resource)%20r2.buckets.lifecycle%20%3E%20(terraform%20resource)%20%3E%20(attribute)%20rules%20%3E%20(attribute)%20conditions">Link to this property</a>

enabled: Bool

Whether or not this rule is in effect.

<a href="#(resource)%20r2.buckets.lifecycle%20%3E%20(terraform%20resource)%20%3E%20(attribute)%20rules%20%3E%20(attribute)%20enabled">Link to this property</a>

<details>

<summary>

abort\_multipart\_uploads\_transition?: Attributes

Transition to abort ongoing multipart uploads.

</summary>

<details>

<summary>

condition?: Attributes

Condition for lifecycle transitions to apply after an object reaches an age in seconds.

</summary>

max\_age: Int64

<a href="#(resource)%20r2.buckets.lifecycle%20%3E%20(terraform%20resource)%20%3E%20(attribute)%20rules%20%3E%20(attribute)%20abort_multipart_uploads_transition%20%3E%20(attribute)%20condition%20%3E%20(attribute)%20max_age">Link to this property</a>

type: String

<a href="#(resource)%20r2.buckets.lifecycle%20%3E%20(terraform%20resource)%20%3E%20(attribute)%20rules%20%3E%20(attribute)%20abort_multipart_uploads_transition%20%3E%20(attribute)%20condition%20%3E%20(attribute)%20type">Link to this property</a>

</details>

<a href="#(resource)%20r2.buckets.lifecycle%20%3E%20(terraform%20resource)%20%3E%20(attribute)%20rules%20%3E%20(attribute)%20abort_multipart_uploads_transition%20%3E%20(attribute)%20condition">Link to this property</a>

</details>

<a href="#(resource)%20r2.buckets.lifecycle%20%3E%20(terraform%20resource)%20%3E%20(attribute)%20rules%20%3E%20(attribute)%20abort_multipart_uploads_transition">Link to this property</a>

<details>

<summary>

delete\_objects\_transition?: Attributes

Transition to delete objects.

</summary>

<details>

<summary>

condition?: Attributes

Condition for lifecycle transitions to apply after an object reaches an age in seconds.

</summary>

max\_age?: Int64

<a href="#(resource)%20r2.buckets.lifecycle%20%3E%20(terraform%20resource)%20%3E%20(attribute)%20rules%20%3E%20(attribute)%20delete_objects_transition%20%3E%20(attribute)%20condition%20%3E%20(attribute)%20max_age">Link to this property</a>

type: String

<a href="#(resource)%20r2.buckets.lifecycle%20%3E%20(terraform%20resource)%20%3E%20(attribute)%20rules%20%3E%20(attribute)%20delete_objects_transition%20%3E%20(attribute)%20condition%20%3E%20(attribute)%20type">Link to this property</a>

date?: Time

<a href="#(resource)%20r2.buckets.lifecycle%20%3E%20(terraform%20resource)%20%3E%20(attribute)%20rules%20%3E%20(attribute)%20delete_objects_transition%20%3E%20(attribute)%20condition%20%3E%20(attribute)%20date">Link to this property</a>

</details>

<a href="#(resource)%20r2.buckets.lifecycle%20%3E%20(terraform%20resource)%20%3E%20(attribute)%20rules%20%3E%20(attribute)%20delete_objects_transition%20%3E%20(attribute)%20condition">Link to this property</a>

</details>

<a href="#(resource)%20r2.buckets.lifecycle%20%3E%20(terraform%20resource)%20%3E%20(attribute)%20rules%20%3E%20(attribute)%20delete_objects_transition">Link to this property</a>

<details>

<summary>

storage\_class\_transitions?: List\[Attributes]

Transitions to change the storage class of objects.

</summary>

<details>

<summary>

condition: Attributes

Condition for lifecycle transitions to apply after an object reaches an age in seconds.

</summary>

max\_age?: Int64

<a href="#(resource)%20r2.buckets.lifecycle%20%3E%20(terraform%20resource)%20%3E%20(attribute)%20rules%20%3E%20(attribute)%20storage_class_transitions%20%3E%20(attribute)%20condition%20%3E%20(attribute)%20max_age">Link to this property</a>

type: String

<a href="#(resource)%20r2.buckets.lifecycle%20%3E%20(terraform%20resource)%20%3E%20(attribute)%20rules%20%3E%20(attribute)%20storage_class_transitions%20%3E%20(attribute)%20condition%20%3E%20(attribute)%20type">Link to this property</a>

date?: Time

<a href="#(resource)%20r2.buckets.lifecycle%20%3E%20(terraform%20resource)%20%3E%20(attribute)%20rules%20%3E%20(attribute)%20storage_class_transitions%20%3E%20(attribute)%20condition%20%3E%20(attribute)%20date">Link to this property</a>

</details>

<a href="#(resource)%20r2.buckets.lifecycle%20%3E%20(terraform%20resource)%20%3E%20(attribute)%20rules%20%3E%20(attribute)%20storage_class_transitions%20%3E%20(attribute)%20condition">Link to this property</a>

storage\_class: String

<a href="#(resource)%20r2.buckets.lifecycle%20%3E%20(terraform%20resource)%20%3E%20(attribute)%20rules%20%3E%20(attribute)%20storage_class_transitions%20%3E%20(attribute)%20storage_class">Link to this property</a>

</details>

<a href="#(resource)%20r2.buckets.lifecycle%20%3E%20(terraform%20resource)%20%3E%20(attribute)%20rules%20%3E%20(attribute)%20storage_class_transitions">Link to this property</a>

</details>

[Link to this property](<#(resource)%20r2.buckets.lifecycle%20%3E%20(terraform%20resource)%20%3E%20(attribute)%20rules>)

### cloudflare\_r2\_bucket\_lifecycle

Terraform

HTTPTypeScriptPythonGoTerraform

```
resource "cloudflare_r2_bucket_lifecycle" "example_r2_bucket_lifecycle" {
  account_id = "023e105f4ecef8ad9ca31a8372d0c353"
  bucket_name = "example-bucket"
  rules = [{
    id = "Expire all objects older than 24 hours"
    conditions = {
      prefix = "prefix"
    }
    enabled = true
    abort_multipart_uploads_transition = {
      condition = {
        max_age = 0
        type = "Age"
      }
    }
    delete_objects_transition = {
      condition = {
        max_age = 0
        type = "Age"
      }
    }
    storage_class_transitions = [{
      condition = {
        max_age = 0
        type = "Age"
      }
      storage_class = "InfrequentAccess"
    }]
  }]
}
```

#### data cloudflare\_r2\_bucket\_lifecycle

##### required Expand Collapse

account\_id: String

Cloudflare account ID that owns the R2 resource.

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

bucket\_name: String

Name of the bucket.

[Link to this property](<#(resource)%20r2.buckets.lifecycle%20%3E%20(terraform%20datasource-single)%20%3E%20(attribute)%20bucket_name>)

##### computed Expand Collapse

<details>

<summary>

rules: List\[Attributes]

</summary>

id: String

Unique identifier for this rule.

<a href="#(resource)%20r2.buckets.lifecycle%20%3E%20(terraform%20datasource-single)%20%3E%20(attribute)%20rules%20%3E%20(attribute)%20id">Link to this property</a>

<details>

<summary>

conditions: Attributes

Conditions that apply to all transitions of this rule.

</summary>

prefix: String

Transitions will only apply to objects/uploads in the bucket that start with the given prefix, an empty prefix can be provided to scope rule to all objects/uploads.

<a href="#(resource)%20r2.buckets.lifecycle%20%3E%20(terraform%20datasource-single)%20%3E%20(attribute)%20rules%20%3E%20(attribute)%20conditions%20%3E%20(attribute)%20prefix">Link to this property</a>

</details>

<a href="#(resource)%20r2.buckets.lifecycle%20%3E%20(terraform%20datasource-single)%20%3E%20(attribute)%20rules%20%3E%20(attribute)%20conditions">Link to this property</a>

enabled: Bool

Whether or not this rule is in effect.

<a href="#(resource)%20r2.buckets.lifecycle%20%3E%20(terraform%20datasource-single)%20%3E%20(attribute)%20rules%20%3E%20(attribute)%20enabled">Link to this property</a>

<details>

<summary>

abort\_multipart\_uploads\_transition: Attributes

Transition to abort ongoing multipart uploads.

</summary>

<details>

<summary>

condition: Attributes

Condition for lifecycle transitions to apply after an object reaches an age in seconds.

</summary>

max\_age: Int64

<a href="#(resource)%20r2.buckets.lifecycle%20%3E%20(terraform%20datasource-single)%20%3E%20(attribute)%20rules%20%3E%20(attribute)%20abort_multipart_uploads_transition%20%3E%20(attribute)%20condition%20%3E%20(attribute)%20max_age">Link to this property</a>

type: String

<a href="#(resource)%20r2.buckets.lifecycle%20%3E%20(terraform%20datasource-single)%20%3E%20(attribute)%20rules%20%3E%20(attribute)%20abort_multipart_uploads_transition%20%3E%20(attribute)%20condition%20%3E%20(attribute)%20type">Link to this property</a>

</details>

<a href="#(resource)%20r2.buckets.lifecycle%20%3E%20(terraform%20datasource-single)%20%3E%20(attribute)%20rules%20%3E%20(attribute)%20abort_multipart_uploads_transition%20%3E%20(attribute)%20condition">Link to this property</a>

</details>

<a href="#(resource)%20r2.buckets.lifecycle%20%3E%20(terraform%20datasource-single)%20%3E%20(attribute)%20rules%20%3E%20(attribute)%20abort_multipart_uploads_transition">Link to this property</a>

<details>

<summary>

delete\_objects\_transition: Attributes

Transition to delete objects.

</summary>

<details>

<summary>

condition: Attributes

Condition for lifecycle transitions to apply after an object reaches an age in seconds.

</summary>

max\_age: Int64

<a href="#(resource)%20r2.buckets.lifecycle%20%3E%20(terraform%20datasource-single)%20%3E%20(attribute)%20rules%20%3E%20(attribute)%20delete_objects_transition%20%3E%20(attribute)%20condition%20%3E%20(attribute)%20max_age">Link to this property</a>

type: String

<a href="#(resource)%20r2.buckets.lifecycle%20%3E%20(terraform%20datasource-single)%20%3E%20(attribute)%20rules%20%3E%20(attribute)%20delete_objects_transition%20%3E%20(attribute)%20condition%20%3E%20(attribute)%20type">Link to this property</a>

date: Time

<a href="#(resource)%20r2.buckets.lifecycle%20%3E%20(terraform%20datasource-single)%20%3E%20(attribute)%20rules%20%3E%20(attribute)%20delete_objects_transition%20%3E%20(attribute)%20condition%20%3E%20(attribute)%20date">Link to this property</a>

</details>

<a href="#(resource)%20r2.buckets.lifecycle%20%3E%20(terraform%20datasource-single)%20%3E%20(attribute)%20rules%20%3E%20(attribute)%20delete_objects_transition%20%3E%20(attribute)%20condition">Link to this property</a>

</details>

<a href="#(resource)%20r2.buckets.lifecycle%20%3E%20(terraform%20datasource-single)%20%3E%20(attribute)%20rules%20%3E%20(attribute)%20delete_objects_transition">Link to this property</a>

<details>

<summary>

storage\_class\_transitions: List\[Attributes]

Transitions to change the storage class of objects.

</summary>

<details>

<summary>

condition: Attributes

Condition for lifecycle transitions to apply after an object reaches an age in seconds.

</summary>

max\_age: Int64

<a href="#(resource)%20r2.buckets.lifecycle%20%3E%20(terraform%20datasource-single)%20%3E%20(attribute)%20rules%20%3E%20(attribute)%20storage_class_transitions%20%3E%20(attribute)%20condition%20%3E%20(attribute)%20max_age">Link to this property</a>

type: String

<a href="#(resource)%20r2.buckets.lifecycle%20%3E%20(terraform%20datasource-single)%20%3E%20(attribute)%20rules%20%3E%20(attribute)%20storage_class_transitions%20%3E%20(attribute)%20condition%20%3E%20(attribute)%20type">Link to this property</a>

date: Time

<a href="#(resource)%20r2.buckets.lifecycle%20%3E%20(terraform%20datasource-single)%20%3E%20(attribute)%20rules%20%3E%20(attribute)%20storage_class_transitions%20%3E%20(attribute)%20condition%20%3E%20(attribute)%20date">Link to this property</a>

</details>

<a href="#(resource)%20r2.buckets.lifecycle%20%3E%20(terraform%20datasource-single)%20%3E%20(attribute)%20rules%20%3E%20(attribute)%20storage_class_transitions%20%3E%20(attribute)%20condition">Link to this property</a>

storage\_class: String

<a href="#(resource)%20r2.buckets.lifecycle%20%3E%20(terraform%20datasource-single)%20%3E%20(attribute)%20rules%20%3E%20(attribute)%20storage_class_transitions%20%3E%20(attribute)%20storage_class">Link to this property</a>

</details>

<a href="#(resource)%20r2.buckets.lifecycle%20%3E%20(terraform%20datasource-single)%20%3E%20(attribute)%20rules%20%3E%20(attribute)%20storage_class_transitions">Link to this property</a>

</details>

[Link to this property](<#(resource)%20r2.buckets.lifecycle%20%3E%20(terraform%20datasource-single)%20%3E%20(attribute)%20rules>)

### cloudflare\_r2\_bucket\_lifecycle

Terraform

HTTPTypeScriptPythonGoTerraform

```
data "cloudflare_r2_bucket_lifecycle" "example_r2_bucket_lifecycle" {
  account_id = "023e105f4ecef8ad9ca31a8372d0c353"
  bucket_name = "example-bucket"
}
```

#### R2BucketsCORS

#### resource cloudflare\_r2\_bucket\_cors

##### required Expand Collapse

account\_id: String

Cloudflare account ID that owns the R2 resource.

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

bucket\_name: String

Name of the bucket.

[Link to this property](<#(resource)%20r2.buckets.cors%20%3E%20(terraform%20resource)%20%3E%20(attribute)%20bucket_name>)

##### optional Expand Collapse

<details>

<summary>

rules?: List\[Attributes]

</summary>

<details>

<summary>

allowed: Attributes

Object specifying allowed origins, methods and headers for this CORS rule.

</summary>

methods: List\[String]

Specifies the value for the Access-Control-Allow-Methods header R2 sets when requesting objects in a bucket from a browser.

<a href="#(resource)%20r2.buckets.cors%20%3E%20(terraform%20resource)%20%3E%20(attribute)%20rules%20%3E%20(attribute)%20allowed%20%3E%20(attribute)%20methods">Link to this property</a>

origins: List\[String]

Specifies the value for the Access-Control-Allow-Origin header R2 sets when requesting objects in a bucket from a browser.

<a href="#(resource)%20r2.buckets.cors%20%3E%20(terraform%20resource)%20%3E%20(attribute)%20rules%20%3E%20(attribute)%20allowed%20%3E%20(attribute)%20origins">Link to this property</a>

headers?: List\[String]

Specifies the value for the Access-Control-Allow-Headers header R2 sets when requesting objects in this bucket from a browser. Cross-origin requests that include custom headers (e.g. x-user-id) should specify these headers as AllowedHeaders.

<a href="#(resource)%20r2.buckets.cors%20%3E%20(terraform%20resource)%20%3E%20(attribute)%20rules%20%3E%20(attribute)%20allowed%20%3E%20(attribute)%20headers">Link to this property</a>

</details>

<a href="#(resource)%20r2.buckets.cors%20%3E%20(terraform%20resource)%20%3E%20(attribute)%20rules%20%3E%20(attribute)%20allowed">Link to this property</a>

id?: String

Identifier for this rule.

<a href="#(resource)%20r2.buckets.cors%20%3E%20(terraform%20resource)%20%3E%20(attribute)%20rules%20%3E%20(attribute)%20id">Link to this property</a>

expose\_headers?: List\[String]

Specifies the headers that can be exposed back, and accessed by, the JavaScript making the cross-origin request. If you need to access headers beyond the safelisted response headers, such as Content-Encoding or cf-cache-status, you must specify it here.

<a href="#(resource)%20r2.buckets.cors%20%3E%20(terraform%20resource)%20%3E%20(attribute)%20rules%20%3E%20(attribute)%20expose_headers">Link to this property</a>

max\_age\_seconds?: Float64

Specifies the amount of time (in seconds) browsers are allowed to cache CORS preflight responses. Browsers may limit this to 2 hours or less, even if the maximum value (86400) is specified.

<a href="#(resource)%20r2.buckets.cors%20%3E%20(terraform%20resource)%20%3E%20(attribute)%20rules%20%3E%20(attribute)%20max_age_seconds">Link to this property</a>

</details>

[Link to this property](<#(resource)%20r2.buckets.cors%20%3E%20(terraform%20resource)%20%3E%20(attribute)%20rules>)

### cloudflare\_r2\_bucket\_cors

Terraform

HTTPTypeScriptPythonGoTerraform

```
resource "cloudflare_r2_bucket_cors" "example_r2_bucket_cors" {
  account_id = "023e105f4ecef8ad9ca31a8372d0c353"
  bucket_name = "example-bucket"
  rules = [{
    allowed = {
      methods = ["GET"]
      origins = ["http://localhost:3000"]
      headers = ["x-requested-by"]
    }
    id = "Allow Local Development"
    expose_headers = ["Content-Encoding"]
    max_age_seconds = 3600
  }]
}
```

#### data cloudflare\_r2\_bucket\_cors

##### required Expand Collapse

account\_id: String

Cloudflare account ID that owns the R2 resource.

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

bucket\_name: String

Name of the bucket.

[Link to this property](<#(resource)%20r2.buckets.cors%20%3E%20(terraform%20datasource-single)%20%3E%20(attribute)%20bucket_name>)

##### computed Expand Collapse

<details>

<summary>

rules: List\[Attributes]

</summary>

<details>

<summary>

allowed: Attributes

Object specifying allowed origins, methods and headers for this CORS rule.

</summary>

methods: List\[String]

Specifies the value for the Access-Control-Allow-Methods header R2 sets when requesting objects in a bucket from a browser.

<a href="#(resource)%20r2.buckets.cors%20%3E%20(terraform%20datasource-single)%20%3E%20(attribute)%20rules%20%3E%20(attribute)%20allowed%20%3E%20(attribute)%20methods">Link to this property</a>

origins: List\[String]

Specifies the value for the Access-Control-Allow-Origin header R2 sets when requesting objects in a bucket from a browser.

<a href="#(resource)%20r2.buckets.cors%20%3E%20(terraform%20datasource-single)%20%3E%20(attribute)%20rules%20%3E%20(attribute)%20allowed%20%3E%20(attribute)%20origins">Link to this property</a>

headers: List\[String]

Specifies the value for the Access-Control-Allow-Headers header R2 sets when requesting objects in this bucket from a browser. Cross-origin requests that include custom headers (e.g. x-user-id) should specify these headers as AllowedHeaders.

<a href="#(resource)%20r2.buckets.cors%20%3E%20(terraform%20datasource-single)%20%3E%20(attribute)%20rules%20%3E%20(attribute)%20allowed%20%3E%20(attribute)%20headers">Link to this property</a>

</details>

<a href="#(resource)%20r2.buckets.cors%20%3E%20(terraform%20datasource-single)%20%3E%20(attribute)%20rules%20%3E%20(attribute)%20allowed">Link to this property</a>

id: String

Identifier for this rule.

<a href="#(resource)%20r2.buckets.cors%20%3E%20(terraform%20datasource-single)%20%3E%20(attribute)%20rules%20%3E%20(attribute)%20id">Link to this property</a>

expose\_headers: List\[String]

Specifies the headers that can be exposed back, and accessed by, the JavaScript making the cross-origin request. If you need to access headers beyond the safelisted response headers, such as Content-Encoding or cf-cache-status, you must specify it here.

<a href="#(resource)%20r2.buckets.cors%20%3E%20(terraform%20datasource-single)%20%3E%20(attribute)%20rules%20%3E%20(attribute)%20expose_headers">Link to this property</a>

max\_age\_seconds: Float64

Specifies the amount of time (in seconds) browsers are allowed to cache CORS preflight responses. Browsers may limit this to 2 hours or less, even if the maximum value (86400) is specified.

<a href="#(resource)%20r2.buckets.cors%20%3E%20(terraform%20datasource-single)%20%3E%20(attribute)%20rules%20%3E%20(attribute)%20max_age_seconds">Link to this property</a>

</details>

[Link to this property](<#(resource)%20r2.buckets.cors%20%3E%20(terraform%20datasource-single)%20%3E%20(attribute)%20rules>)

### cloudflare\_r2\_bucket\_cors

Terraform

HTTPTypeScriptPythonGoTerraform

```
data "cloudflare_r2_bucket_cors" "example_r2_bucket_cors" {
  account_id = "023e105f4ecef8ad9ca31a8372d0c353"
  bucket_name = "example-bucket"
}
```

#### R2BucketsDomainsCustom

#### resource cloudflare\_r2\_custom\_domain

##### required Expand Collapse

account\_id: String

Cloudflare account ID that owns the R2 resource.

[Link to this property](<#(resource)%20r2.buckets.domains.custom%20%3E%20(terraform%20resource)%20%3E%20(attribute)%20account_id>)

bucket\_name: String

Name of the bucket.

[Link to this property](<#(resource)%20r2.buckets.domains.custom%20%3E%20(terraform%20resource)%20%3E%20(attribute)%20bucket_name>)

domain: String

Name of the custom domain to be added.

[Link to this property](<#(resource)%20r2.buckets.domains.custom%20%3E%20(terraform%20resource)%20%3E%20(attribute)%20domain>)

zone\_id: String

Zone ID of the custom domain.

[Link to this property](<#(resource)%20r2.buckets.domains.custom%20%3E%20(terraform%20resource)%20%3E%20(attribute)%20zone_id>)

enabled: Bool

Whether to enable public bucket access at the custom domain. If undefined, the domain will be enabled.

[Link to this property](<#(resource)%20r2.buckets.domains.custom%20%3E%20(terraform%20resource)%20%3E%20(attribute)%20enabled>)

##### optional Expand Collapse

min\_tls?: String

Minimum TLS Version the custom domain will accept for incoming connections. If not set, defaults to 1.0.

[Link to this property](<#(resource)%20r2.buckets.domains.custom%20%3E%20(terraform%20resource)%20%3E%20(attribute)%20min_tls>)

ciphers?: List\[String]

An allowlist of ciphers for TLS termination. These ciphers must be in the BoringSSL format.

[Link to this property](<#(resource)%20r2.buckets.domains.custom%20%3E%20(terraform%20resource)%20%3E%20(attribute)%20ciphers>)

##### computed Expand Collapse

zone\_name: String

Zone that the custom domain resides in.

[Link to this property](<#(resource)%20r2.buckets.domains.custom%20%3E%20(terraform%20resource)%20%3E%20(attribute)%20zone_name>)

<details>

<summary>

status: Attributes

</summary>

ownership: String

Ownership status of the domain.

<a href="#(resource)%20r2.buckets.domains.custom%20%3E%20(terraform%20resource)%20%3E%20(attribute)%20status%20%3E%20(attribute)%20ownership">Link to this property</a>

ssl: String

SSL certificate status.

<a href="#(resource)%20r2.buckets.domains.custom%20%3E%20(terraform%20resource)%20%3E%20(attribute)%20status%20%3E%20(attribute)%20ssl">Link to this property</a>

</details>

[Link to this property](<#(resource)%20r2.buckets.domains.custom%20%3E%20(terraform%20resource)%20%3E%20(attribute)%20status>)

### cloudflare\_r2\_custom\_domain

Terraform

HTTPTypeScriptPythonGoTerraform

```
resource "cloudflare_r2_custom_domain" "example_r2_custom_domain" {
  account_id = "023e105f4ecef8ad9ca31a8372d0c353"
  bucket_name = "example-bucket"
  domain = "prefix.example-domain.com"
  enabled = true
  zone_id = "36ca64a6d92827b8a6b90be344bb1bfd"
  ciphers = ["string"]
  min_tls = "1.0"
}
```

#### data cloudflare\_r2\_custom\_domain

##### required Expand Collapse

account\_id: String

Cloudflare account ID that owns the R2 resource.

[Link to this property](<#(resource)%20r2.buckets.domains.custom%20%3E%20(terraform%20datasource-single)%20%3E%20(attribute)%20account_id>)

bucket\_name: String

Name of the bucket.

[Link to this property](<#(resource)%20r2.buckets.domains.custom%20%3E%20(terraform%20datasource-single)%20%3E%20(attribute)%20bucket_name>)

domain: String

Name of the custom domain.

[Link to this property](<#(resource)%20r2.buckets.domains.custom%20%3E%20(terraform%20datasource-single)%20%3E%20(attribute)%20domain>)

##### computed Expand Collapse

enabled: Bool

Whether this bucket is publicly accessible at the specified custom domain.

[Link to this property](<#(resource)%20r2.buckets.domains.custom%20%3E%20(terraform%20datasource-single)%20%3E%20(attribute)%20enabled>)

min\_tls: String

Minimum TLS Version the custom domain will accept for incoming connections. If not set, defaults to 1.0.

[Link to this property](<#(resource)%20r2.buckets.domains.custom%20%3E%20(terraform%20datasource-single)%20%3E%20(attribute)%20min_tls>)

zone\_id: String

Zone ID of the custom domain resides in.

[Link to this property](<#(resource)%20r2.buckets.domains.custom%20%3E%20(terraform%20datasource-single)%20%3E%20(attribute)%20zone_id>)

zone\_name: String

Zone that the custom domain resides in.

[Link to this property](<#(resource)%20r2.buckets.domains.custom%20%3E%20(terraform%20datasource-single)%20%3E%20(attribute)%20zone_name>)

ciphers: List\[String]

An allowlist of ciphers for TLS termination. These ciphers must be in the BoringSSL format.

[Link to this property](<#(resource)%20r2.buckets.domains.custom%20%3E%20(terraform%20datasource-single)%20%3E%20(attribute)%20ciphers>)

<details>

<summary>

status: Attributes

</summary>

ownership: String

Ownership status of the domain.

<a href="#(resource)%20r2.buckets.domains.custom%20%3E%20(terraform%20datasource-single)%20%3E%20(attribute)%20status%20%3E%20(attribute)%20ownership">Link to this property</a>

ssl: String

SSL certificate status.

<a href="#(resource)%20r2.buckets.domains.custom%20%3E%20(terraform%20datasource-single)%20%3E%20(attribute)%20status%20%3E%20(attribute)%20ssl">Link to this property</a>

</details>

[Link to this property](<#(resource)%20r2.buckets.domains.custom%20%3E%20(terraform%20datasource-single)%20%3E%20(attribute)%20status>)

### cloudflare\_r2\_custom\_domain

Terraform

HTTPTypeScriptPythonGoTerraform

```
data "cloudflare_r2_custom_domain" "example_r2_custom_domain" {
  account_id = "023e105f4ecef8ad9ca31a8372d0c353"
  bucket_name = "example-bucket"
  domain = "example-domain/custom-domain.com"
}
```

#### R2BucketsDomainsManaged

#### resource cloudflare\_r2\_managed\_domain

##### required Expand Collapse

account\_id: String

Cloudflare account ID that owns the R2 resource.

[Link to this property](<#(resource)%20r2.buckets.domains.managed%20%3E%20(terraform%20resource)%20%3E%20(attribute)%20account_id>)

bucket\_name: String

Name of the bucket.

[Link to this property](<#(resource)%20r2.buckets.domains.managed%20%3E%20(terraform%20resource)%20%3E%20(attribute)%20bucket_name>)

enabled: Bool

Whether to enable public bucket access at the r2.dev domain.

[Link to this property](<#(resource)%20r2.buckets.domains.managed%20%3E%20(terraform%20resource)%20%3E%20(attribute)%20enabled>)

##### computed Expand Collapse

bucket\_id: String

Bucket ID.

[Link to this property](<#(resource)%20r2.buckets.domains.managed%20%3E%20(terraform%20resource)%20%3E%20(attribute)%20bucket_id>)

domain: String

Domain name of the bucket’s r2.dev domain.

[Link to this property](<#(resource)%20r2.buckets.domains.managed%20%3E%20(terraform%20resource)%20%3E%20(attribute)%20domain>)

### cloudflare\_r2\_managed\_domain

Terraform

HTTPTypeScriptPythonGoTerraform

```
resource "cloudflare_r2_managed_domain" "example_r2_managed_domain" {
  account_id = "023e105f4ecef8ad9ca31a8372d0c353"
  bucket_name = "example-bucket"
  enabled = true
}
```

#### R2BucketsEvent Notifications

#### resource cloudflare\_r2\_bucket\_event\_notification

##### required Expand Collapse

account\_id: String

Cloudflare account ID that owns the R2 resource.

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

bucket\_name: String

Name of the bucket.

[Link to this property](<#(resource)%20r2.buckets.event_notifications%20%3E%20(terraform%20resource)%20%3E%20(attribute)%20bucket_name>)

queue\_id: String

ID of the Cloudflare Queue that receives notifications for matching R2 object events.

[Link to this property](<#(resource)%20r2.buckets.event_notifications%20%3E%20(terraform%20resource)%20%3E%20(attribute)%20queue_id>)

<details>

<summary>

rules: List\[Attributes]

Array of rules to drive notifications.

</summary>

actions: List\[String]

Array of R2 object actions that will trigger notifications.

<a href="#(resource)%20r2.buckets.event_notifications%20%3E%20(terraform%20resource)%20%3E%20(attribute)%20rules%20%3E%20(attribute)%20actions">Link to this property</a>

description?: String

A description that can be used to identify the event notification rule after creation.

<a href="#(resource)%20r2.buckets.event_notifications%20%3E%20(terraform%20resource)%20%3E%20(attribute)%20rules%20%3E%20(attribute)%20description">Link to this property</a>

prefix?: String

Notifications will be sent only for objects with this prefix.

<a href="#(resource)%20r2.buckets.event_notifications%20%3E%20(terraform%20resource)%20%3E%20(attribute)%20rules%20%3E%20(attribute)%20prefix">Link to this property</a>

suffix?: String

Notifications will be sent only for objects with this suffix.

<a href="#(resource)%20r2.buckets.event_notifications%20%3E%20(terraform%20resource)%20%3E%20(attribute)%20rules%20%3E%20(attribute)%20suffix">Link to this property</a>

</details>

[Link to this property](<#(resource)%20r2.buckets.event_notifications%20%3E%20(terraform%20resource)%20%3E%20(attribute)%20rules>)

##### computed Expand Collapse

queue\_name: String

Name of the queue.

[Link to this property](<#(resource)%20r2.buckets.event_notifications%20%3E%20(terraform%20resource)%20%3E%20(attribute)%20queue_name>)

### cloudflare\_r2\_bucket\_event\_notification

Terraform

HTTPTypeScriptPythonGoTerraform

```
resource "cloudflare_r2_bucket_event_notification" "example_r2_bucket_event_notification" {
  account_id = "023e105f4ecef8ad9ca31a8372d0c353"
  bucket_name = "example-bucket"
  queue_id = "queue_id"
  rules = [{
    actions = ["PutObject", "CopyObject"]
    description = "Notifications from source bucket to queue"
    prefix = "img/"
    suffix = ".jpeg"
  }]
}
```

#### data cloudflare\_r2\_bucket\_event\_notification

##### required Expand Collapse

account\_id: String

Cloudflare account ID that owns the R2 resource.

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

bucket\_name: String

Name of the bucket.

[Link to this property](<#(resource)%20r2.buckets.event_notifications%20%3E%20(terraform%20datasource-single)%20%3E%20(attribute)%20bucket_name>)

queue\_id: String

ID of the Cloudflare Queue that receives notifications for matching R2 object events.

[Link to this property](<#(resource)%20r2.buckets.event_notifications%20%3E%20(terraform%20datasource-single)%20%3E%20(attribute)%20queue_id>)

##### computed Expand Collapse

queue\_name: String

Name of the queue.

[Link to this property](<#(resource)%20r2.buckets.event_notifications%20%3E%20(terraform%20datasource-single)%20%3E%20(attribute)%20queue_name>)

<details>

<summary>

rules: List\[Attributes]

</summary>

actions: List\[String]

Array of R2 object actions that will trigger notifications.

<a href="#(resource)%20r2.buckets.event_notifications%20%3E%20(terraform%20datasource-single)%20%3E%20(attribute)%20rules%20%3E%20(attribute)%20actions">Link to this property</a>

created\_at: String

Timestamp when the rule was created.

<a href="#(resource)%20r2.buckets.event_notifications%20%3E%20(terraform%20datasource-single)%20%3E%20(attribute)%20rules%20%3E%20(attribute)%20created_at">Link to this property</a>

description: String

A description that can be used to identify the event notification rule after creation.

<a href="#(resource)%20r2.buckets.event_notifications%20%3E%20(terraform%20datasource-single)%20%3E%20(attribute)%20rules%20%3E%20(attribute)%20description">Link to this property</a>

prefix: String

Notifications will be sent only for objects with this prefix.

<a href="#(resource)%20r2.buckets.event_notifications%20%3E%20(terraform%20datasource-single)%20%3E%20(attribute)%20rules%20%3E%20(attribute)%20prefix">Link to this property</a>

rule\_id: String

Rule ID.

<a href="#(resource)%20r2.buckets.event_notifications%20%3E%20(terraform%20datasource-single)%20%3E%20(attribute)%20rules%20%3E%20(attribute)%20rule_id">Link to this property</a>

suffix: String

Notifications will be sent only for objects with this suffix.

<a href="#(resource)%20r2.buckets.event_notifications%20%3E%20(terraform%20datasource-single)%20%3E%20(attribute)%20rules%20%3E%20(attribute)%20suffix">Link to this property</a>

</details>

[Link to this property](<#(resource)%20r2.buckets.event_notifications%20%3E%20(terraform%20datasource-single)%20%3E%20(attribute)%20rules>)

### cloudflare\_r2\_bucket\_event\_notification

Terraform

HTTPTypeScriptPythonGoTerraform

```
data "cloudflare_r2_bucket_event_notification" "example_r2_bucket_event_notification" {
  account_id = "023e105f4ecef8ad9ca31a8372d0c353"
  bucket_name = "example-bucket"
  queue_id = "queue_id"
}
```

#### R2BucketsLocks

#### resource cloudflare\_r2\_bucket\_lock

##### required Expand Collapse

account\_id: String

Cloudflare account ID that owns the R2 resource.

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

bucket\_name: String

Name of the bucket.

[Link to this property](<#(resource)%20r2.buckets.locks%20%3E%20(terraform%20resource)%20%3E%20(attribute)%20bucket_name>)

##### optional Expand Collapse

<details>

<summary>

rules?: List\[Attributes]

</summary>

id: String

Unique identifier for this rule.

<a href="#(resource)%20r2.buckets.locks%20%3E%20(terraform%20resource)%20%3E%20(attribute)%20rules%20%3E%20(attribute)%20id">Link to this property</a>

<details>

<summary>

condition: Attributes

Condition to apply a lock rule to an object for how long in seconds.

</summary>

max\_age\_seconds?: Int64

<a href="#(resource)%20r2.buckets.locks%20%3E%20(terraform%20resource)%20%3E%20(attribute)%20rules%20%3E%20(attribute)%20condition%20%3E%20(attribute)%20max_age_seconds">Link to this property</a>

type: String

<a href="#(resource)%20r2.buckets.locks%20%3E%20(terraform%20resource)%20%3E%20(attribute)%20rules%20%3E%20(attribute)%20condition%20%3E%20(attribute)%20type">Link to this property</a>

date?: Time

<a href="#(resource)%20r2.buckets.locks%20%3E%20(terraform%20resource)%20%3E%20(attribute)%20rules%20%3E%20(attribute)%20condition%20%3E%20(attribute)%20date">Link to this property</a>

</details>

<a href="#(resource)%20r2.buckets.locks%20%3E%20(terraform%20resource)%20%3E%20(attribute)%20rules%20%3E%20(attribute)%20condition">Link to this property</a>

enabled: Bool

Whether or not this rule is in effect.

<a href="#(resource)%20r2.buckets.locks%20%3E%20(terraform%20resource)%20%3E%20(attribute)%20rules%20%3E%20(attribute)%20enabled">Link to this property</a>

prefix?: String

Rule will only apply to objects/uploads in the bucket that start with the given prefix, an empty prefix can be provided to scope rule to all objects/uploads.

<a href="#(resource)%20r2.buckets.locks%20%3E%20(terraform%20resource)%20%3E%20(attribute)%20rules%20%3E%20(attribute)%20prefix">Link to this property</a>

</details>

[Link to this property](<#(resource)%20r2.buckets.locks%20%3E%20(terraform%20resource)%20%3E%20(attribute)%20rules>)

### cloudflare\_r2\_bucket\_lock

Terraform

HTTPTypeScriptPythonGoTerraform

```
resource "cloudflare_r2_bucket_lock" "example_r2_bucket_lock" {
  account_id = "023e105f4ecef8ad9ca31a8372d0c353"
  bucket_name = "example-bucket"
  rules = [{
    id = "Lock all objects for 24 hours"
    condition = {
      max_age_seconds = 100
      type = "Age"
    }
    enabled = true
    prefix = "prefix"
  }]
}
```

#### data cloudflare\_r2\_bucket\_lock

##### required Expand Collapse

account\_id: String

Cloudflare account ID that owns the R2 resource.

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

bucket\_name: String

Name of the bucket.

[Link to this property](<#(resource)%20r2.buckets.locks%20%3E%20(terraform%20datasource-single)%20%3E%20(attribute)%20bucket_name>)

##### computed Expand Collapse

<details>

<summary>

rules: List\[Attributes]

</summary>

id: String

Unique identifier for this rule.

<a href="#(resource)%20r2.buckets.locks%20%3E%20(terraform%20datasource-single)%20%3E%20(attribute)%20rules%20%3E%20(attribute)%20id">Link to this property</a>

<details>

<summary>

condition: Attributes

Condition to apply a lock rule to an object for how long in seconds.

</summary>

max\_age\_seconds: Int64

<a href="#(resource)%20r2.buckets.locks%20%3E%20(terraform%20datasource-single)%20%3E%20(attribute)%20rules%20%3E%20(attribute)%20condition%20%3E%20(attribute)%20max_age_seconds">Link to this property</a>

type: String

<a href="#(resource)%20r2.buckets.locks%20%3E%20(terraform%20datasource-single)%20%3E%20(attribute)%20rules%20%3E%20(attribute)%20condition%20%3E%20(attribute)%20type">Link to this property</a>

date: Time

<a href="#(resource)%20r2.buckets.locks%20%3E%20(terraform%20datasource-single)%20%3E%20(attribute)%20rules%20%3E%20(attribute)%20condition%20%3E%20(attribute)%20date">Link to this property</a>

</details>

<a href="#(resource)%20r2.buckets.locks%20%3E%20(terraform%20datasource-single)%20%3E%20(attribute)%20rules%20%3E%20(attribute)%20condition">Link to this property</a>

enabled: Bool

Whether or not this rule is in effect.

<a href="#(resource)%20r2.buckets.locks%20%3E%20(terraform%20datasource-single)%20%3E%20(attribute)%20rules%20%3E%20(attribute)%20enabled">Link to this property</a>

prefix: String

Rule will only apply to objects/uploads in the bucket that start with the given prefix, an empty prefix can be provided to scope rule to all objects/uploads.

<a href="#(resource)%20r2.buckets.locks%20%3E%20(terraform%20datasource-single)%20%3E%20(attribute)%20rules%20%3E%20(attribute)%20prefix">Link to this property</a>

</details>

[Link to this property](<#(resource)%20r2.buckets.locks%20%3E%20(terraform%20datasource-single)%20%3E%20(attribute)%20rules>)

### cloudflare\_r2\_bucket\_lock

Terraform

HTTPTypeScriptPythonGoTerraform

```
data "cloudflare_r2_bucket_lock" "example_r2_bucket_lock" {
  account_id = "023e105f4ecef8ad9ca31a8372d0c353"
  bucket_name = "example-bucket"
}
```

#### R2BucketsSippy

#### resource cloudflare\_r2\_bucket\_sippy

##### required Expand Collapse

account\_id: String

Cloudflare account ID that owns the R2 resource.

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

bucket\_name: String

Name of the bucket.

[Link to this property](<#(resource)%20r2.buckets.sippy%20%3E%20(terraform%20resource)%20%3E%20(attribute)%20bucket_name>)

##### optional Expand Collapse

<details>

<summary>

destination?: Attributes

R2 bucket to copy objects to.

</summary>

access\_key\_id?: String

ID of a Cloudflare API token. This is the value labelled “Access Key ID” when creating an API. token from the <a href="https://dash.cloudflare.com/?to=/:account/r2/api-tokens">R2 dashboard</a>.

Sippy will use this token when writing objects to R2, so it is best to scope this token to the bucket you’re enabling Sippy for.

<a href="#(resource)%20r2.buckets.sippy%20%3E%20(terraform%20resource)%20%3E%20(attribute)%20destination%20%3E%20(attribute)%20access_key_id">Link to this property</a>

r2\_bucket\_sippy\_provider?: String

<a href="#(resource)%20r2.buckets.sippy%20%3E%20(terraform%20resource)%20%3E%20(attribute)%20destination%20%3E%20(attribute)%20r2_bucket_sippy_provider">Link to this property</a>

secret\_access\_key?: String

Value of a Cloudflare API token. This is the value labelled “Secret Access Key” when creating an API. token from the <a href="https://dash.cloudflare.com/?to=/:account/r2/api-tokens">R2 dashboard</a>.

Sippy will use this token when writing objects to R2, so it is best to scope this token to the bucket you’re enabling Sippy for.

<a href="#(resource)%20r2.buckets.sippy%20%3E%20(terraform%20resource)%20%3E%20(attribute)%20destination%20%3E%20(attribute)%20secret_access_key">Link to this property</a>

</details>

[Link to this property](<#(resource)%20r2.buckets.sippy%20%3E%20(terraform%20resource)%20%3E%20(attribute)%20destination>)

<details>

<summary>

source?: Attributes

AWS S3 bucket to copy objects from.

</summary>

access\_key\_id?: String

Access Key ID of an IAM credential (ideally scoped to a single S3 bucket).

<a href="#(resource)%20r2.buckets.sippy%20%3E%20(terraform%20resource)%20%3E%20(attribute)%20source%20%3E%20(attribute)%20access_key_id">Link to this property</a>

bucket?: String

Name of the AWS S3 bucket.

<a href="#(resource)%20r2.buckets.sippy%20%3E%20(terraform%20resource)%20%3E%20(attribute)%20source%20%3E%20(attribute)%20bucket">Link to this property</a>

r2\_bucket\_sippy\_provider?: String

<a href="#(resource)%20r2.buckets.sippy%20%3E%20(terraform%20resource)%20%3E%20(attribute)%20source%20%3E%20(attribute)%20r2_bucket_sippy_provider">Link to this property</a>

region?: String

AWS region containing the source S3 bucket.

<a href="#(resource)%20r2.buckets.sippy%20%3E%20(terraform%20resource)%20%3E%20(attribute)%20source%20%3E%20(attribute)%20region">Link to this property</a>

secret\_access\_key?: String

Secret Access Key of an IAM credential (ideally scoped to a single S3 bucket).

<a href="#(resource)%20r2.buckets.sippy%20%3E%20(terraform%20resource)%20%3E%20(attribute)%20source%20%3E%20(attribute)%20secret_access_key">Link to this property</a>

client\_email?: String

Client email of an IAM credential (ideally scoped to a single GCS bucket).

<a href="#(resource)%20r2.buckets.sippy%20%3E%20(terraform%20resource)%20%3E%20(attribute)%20source%20%3E%20(attribute)%20client_email">Link to this property</a>

private\_key?: String

Private Key of an IAM credential (ideally scoped to a single GCS bucket).

<a href="#(resource)%20r2.buckets.sippy%20%3E%20(terraform%20resource)%20%3E%20(attribute)%20source%20%3E%20(attribute)%20private_key">Link to this property</a>

bucket\_url?: String

URL to the S3-compatible API of the bucket.

<a href="#(resource)%20r2.buckets.sippy%20%3E%20(terraform%20resource)%20%3E%20(attribute)%20source%20%3E%20(attribute)%20bucket_url">Link to this property</a>

account\_key?: String

Access key for the Azure Storage account. Mutually exclusive with sasToken.

<a href="#(resource)%20r2.buckets.sippy%20%3E%20(terraform%20resource)%20%3E%20(attribute)%20source%20%3E%20(attribute)%20account_key">Link to this property</a>

account\_name?: String

Name of the Azure Storage account.

<a href="#(resource)%20r2.buckets.sippy%20%3E%20(terraform%20resource)%20%3E%20(attribute)%20source%20%3E%20(attribute)%20account_name">Link to this property</a>

container?: String

Name of the Azure Blob Storage container.

<a href="#(resource)%20r2.buckets.sippy%20%3E%20(terraform%20resource)%20%3E%20(attribute)%20source%20%3E%20(attribute)%20container">Link to this property</a>

sas\_token?: String

Shared Access Signature token for the Azure Storage account. Mutually exclusive with accountKey.

<a href="#(resource)%20r2.buckets.sippy%20%3E%20(terraform%20resource)%20%3E%20(attribute)%20source%20%3E%20(attribute)%20sas_token">Link to this property</a>

</details>

[Link to this property](<#(resource)%20r2.buckets.sippy%20%3E%20(terraform%20resource)%20%3E%20(attribute)%20source>)

##### computed Expand Collapse

enabled: Bool

State of Sippy for this bucket.

[Link to this property](<#(resource)%20r2.buckets.sippy%20%3E%20(terraform%20resource)%20%3E%20(attribute)%20enabled>)

### cloudflare\_r2\_bucket\_sippy

Terraform

HTTPTypeScriptPythonGoTerraform

```
resource "cloudflare_r2_bucket_sippy" "example_r2_bucket_sippy" {
  account_id = "023e105f4ecef8ad9ca31a8372d0c353"
  bucket_name = "example-bucket"
  destination = {
    access_key_id = "accessKeyId"
    r2_bucket_sippy_provider = "r2"
    secret_access_key = "secretAccessKey"
  }
  source = {
    access_key_id = "accessKeyId"
    bucket = "bucket"
    r2_bucket_sippy_provider = "aws"
    region = "region"
    secret_access_key = "secretAccessKey"
  }
}
```

#### data cloudflare\_r2\_bucket\_sippy

##### required Expand Collapse

account\_id: String

Cloudflare account ID that owns the R2 resource.

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

bucket\_name: String

Name of the bucket.

[Link to this property](<#(resource)%20r2.buckets.sippy%20%3E%20(terraform%20datasource-single)%20%3E%20(attribute)%20bucket_name>)

##### computed Expand Collapse

enabled: Bool

State of Sippy for this bucket.

[Link to this property](<#(resource)%20r2.buckets.sippy%20%3E%20(terraform%20datasource-single)%20%3E%20(attribute)%20enabled>)

<details>

<summary>

destination: Attributes

Details about the configured destination bucket.

</summary>

access\_key\_id: String

ID of the Cloudflare API token used when writing objects to this bucket.

<a href="#(resource)%20r2.buckets.sippy%20%3E%20(terraform%20datasource-single)%20%3E%20(attribute)%20destination%20%3E%20(attribute)%20access_key_id">Link to this property</a>

account: String

<a href="#(resource)%20r2.buckets.sippy%20%3E%20(terraform%20datasource-single)%20%3E%20(attribute)%20destination%20%3E%20(attribute)%20account">Link to this property</a>

bucket: String

Name of the bucket on the provider.

<a href="#(resource)%20r2.buckets.sippy%20%3E%20(terraform%20datasource-single)%20%3E%20(attribute)%20destination%20%3E%20(attribute)%20bucket">Link to this property</a>

r2\_bucket\_sippy\_provider: String

<a href="#(resource)%20r2.buckets.sippy%20%3E%20(terraform%20datasource-single)%20%3E%20(attribute)%20destination%20%3E%20(attribute)%20r2_bucket_sippy_provider">Link to this property</a>

</details>

[Link to this property](<#(resource)%20r2.buckets.sippy%20%3E%20(terraform%20datasource-single)%20%3E%20(attribute)%20destination>)

<details>

<summary>

source: Attributes

Details about the configured source bucket.

</summary>

bucket: String

Name of the bucket on the provider (AWS, GCS only).

<a href="#(resource)%20r2.buckets.sippy%20%3E%20(terraform%20datasource-single)%20%3E%20(attribute)%20source%20%3E%20(attribute)%20bucket">Link to this property</a>

bucket\_url: String

S3-compatible URL (Generic S3-compatible providers only).

<a href="#(resource)%20r2.buckets.sippy%20%3E%20(terraform%20datasource-single)%20%3E%20(attribute)%20source%20%3E%20(attribute)%20bucket_url">Link to this property</a>

container: String

Name of the Azure Blob Storage container (Azure only).

<a href="#(resource)%20r2.buckets.sippy%20%3E%20(terraform%20datasource-single)%20%3E%20(attribute)%20source%20%3E%20(attribute)%20container">Link to this property</a>

r2\_bucket\_sippy\_provider: String

<a href="#(resource)%20r2.buckets.sippy%20%3E%20(terraform%20datasource-single)%20%3E%20(attribute)%20source%20%3E%20(attribute)%20r2_bucket_sippy_provider">Link to this property</a>

region: String

Region where the bucket resides (AWS only).

<a href="#(resource)%20r2.buckets.sippy%20%3E%20(terraform%20datasource-single)%20%3E%20(attribute)%20source%20%3E%20(attribute)%20region">Link to this property</a>

</details>

[Link to this property](<#(resource)%20r2.buckets.sippy%20%3E%20(terraform%20datasource-single)%20%3E%20(attribute)%20source>)

### cloudflare\_r2\_bucket\_sippy

Terraform

HTTPTypeScriptPythonGoTerraform

```
data "cloudflare_r2_bucket_sippy" "example_r2_bucket_sippy" {
  account_id = "023e105f4ecef8ad9ca31a8372d0c353"
  bucket_name = "example-bucket"
}
```