terraform { required_version = ">= 1.0" required_providers { cloudflare = { source = "cloudflare/cloudflare" version = "~> 4.0" } } } provider "cloudflare" { api_token = var.cloudflare_api_token } # Data source for account (optional - fails gracefully) data "cloudflare_accounts" "main" { count = var.cloudflare_account_name != "" ? 1 : 0 name = var.cloudflare_account_name } locals { # Use account ID from data source if available, otherwise use variable account_id = ( var.cloudflare_account_name != "" && length(data.cloudflare_accounts.main) > 0 && length(data.cloudflare_accounts.main[0].accounts) > 0 ? data.cloudflare_accounts.main[0].accounts[0].id : var.cloudflare_account_id ) }