Terraform
You must generate an Access Key before getting started. All examples will utilize access_key_id and access_key_secret variables which represent the Access Key ID and Secret Access Key values you generated.
This example shows how to configure R2 with Terraform using the Cloudflare provider ↗.
With terraform ↗ installed, create main.tf and copy the content below replacing with your API Token.
terraform {  required_providers {    cloudflare = {      source = "cloudflare/cloudflare"      version = "~> 4"    }  }}
provider "cloudflare" {  api_token = "<YOUR_API_TOKEN>"}
resource "cloudflare_r2_bucket" "cloudflare-bucket" {  account_id = "<YOUR_ACCOUNT_ID>"  name       = "my-tf-test-bucket"  location   = "WEUR"}You can then use terraform plan to view the changes and terraform apply to apply changes.
Was this helpful?
- Resources
- API
- New to Cloudflare?
- Directory
- Sponsorships
- Open Source
- Support
- Help Center
- System Status
- Compliance
- GDPR
- Company
- cloudflare.com
- Our team
- Careers
- © 2025 Cloudflare, Inc.
- Privacy Policy
- Terms of Use
- Report Security Issues
- Trademark